Michael Niedermayer
d0aa60da10
Merge commit '8db00081a37d5b7e23918ee500bb16bc59b57197'
...
* commit '8db00081a37d5b7e23918ee500bb16bc59b57197':
x86: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
Conflicts:
libavcodec/hpeldsp.c
libavcodec/hpeldsp.h
libavcodec/x86/Makefile
libavcodec/x86/dsputil_mmx.c
libavcodec/x86/hpeldsp_init.c
libavcodec/x86/hpeldsp_rnd_template.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-20 13:42:51 +02:00
Ronald S. Bultje
8db00081a3
x86: hpeldsp: Move half-pel assembly from dsputil to hpeldsp
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-19 23:18:53 +03:00
Christophe Gisquet
76c7277385
x86: sbrdsp: implement SSE2 hf_apply_noise
...
233 to 105 cycles on Arrandale and Win64.
Replacing the multiplication by s_m[m] by a pand and a pxor with
appropriate vectors is slower. Unrolling is a 15 cycles win.
A SSE version was 4 cycles slower.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-19 13:19:45 +02:00
Michael Niedermayer
d5c31403aa
Merge commit 'c46819f2299c73cd1bfa8ef04d08b0153a5699d3'
...
* commit 'c46819f2299c73cd1bfa8ef04d08b0153a5699d3':
x86: Move constants to the only place where they are used
Conflicts:
libavcodec/x86/vp3dsp.asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-16 00:44:20 +02:00
Ronald S. Bultje
015821229f
vp3: Use full transpose for all IDCTs
...
This way, the special IDCT permutations are no longer needed. This
is similar to how H264 does it, and removes the dsputil dependency
imposed by the scantable code.
Also remove the unused type == 0 cases from the plain C version
of the idct.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-15 12:32:05 +03:00
Ronald S. Bultje
c46819f229
x86: Move constants to the only place where they are used
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-15 12:17:39 +03:00
Michael Niedermayer
34b78ad04f
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: dsputil: Move some ifdefs to avoid unused variable warnings
Conflicts:
libavcodec/x86/dsputil_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 23:38:41 +02:00
Michael Niedermayer
ed3680bc9b
Merge commit '2004c7c8f763280ff3ba675ea21cf25396528fd3'
...
* commit '2004c7c8f763280ff3ba675ea21cf25396528fd3':
x86: dsputil: cosmetics: Remove two pointless variable indirections
Conflicts:
libavcodec/x86/dsputil_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 23:28:23 +02:00
Michael Niedermayer
694fa0035a
Merge commit 'c51a3a5bd9a5b404176ff343ecadb80b2553b256'
...
* commit 'c51a3a5bd9a5b404176ff343ecadb80b2553b256':
x86: dsputil: Refactor some ff_{avg|put}_pixels function declarations
Conflicts:
libavcodec/x86/dsputil_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 22:36:31 +02:00
Michael Niedermayer
43bf4ee9a9
Merge commit 'e027032fc6a49db5a4ce12fc3e09ffb86ff20522'
...
* commit 'e027032fc6a49db5a4ce12fc3e09ffb86ff20522':
x86: dsputil: ff_h263_*_loop_filter declarations to a more suitable place
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 22:29:30 +02:00
Michael Niedermayer
52bda1d903
Merge commit 'a89c05500f68d94a0269e68bc522abfd420c5497'
...
* commit 'a89c05500f68d94a0269e68bc522abfd420c5497':
x86: h264qpel: int --> ptrdiff_t for some line_size parameters
Conflicts:
libavcodec/x86/qpelbase.asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 22:22:27 +02:00
Diego Biurrun
a3cb865310
x86: dsputil: Move some ifdefs to avoid unused variable warnings
2013-04-12 09:36:47 +02:00
Diego Biurrun
2004c7c8f7
x86: dsputil: cosmetics: Remove two pointless variable indirections
2013-04-12 09:36:47 +02:00
Diego Biurrun
c51a3a5bd9
x86: dsputil: Refactor some ff_{avg|put}_pixels function declarations
2013-04-12 09:36:46 +02:00
Diego Biurrun
e027032fc6
x86: dsputil: ff_h263_*_loop_filter declarations to a more suitable place
2013-04-12 09:36:46 +02:00
Diego Biurrun
a89c05500f
x86: h264qpel: int --> ptrdiff_t for some line_size parameters
2013-04-12 09:30:12 +02:00
Michael Niedermayer
580a0600ef
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
Move misplaced file author information where it belongs
Conflicts:
libavcodec/adpcm.c
libavcodec/adpcmenc.c
libavcodec/gif.c
libavcodec/x86/dsputilenc_mmx.c
libavcodec/x86/fmtconvert_init.c
libavformat/au.c
libavformat/gif.c
libavformat/mov.c
libavformat/nsvdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 15:56:18 +02:00
Michael Niedermayer
742c392885
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
dsputil: Make dsputil selectable
Conflicts:
configure
libavcodec/Makefile
libavcodec/x86/Makefile
libavcodec/x86/constants.c
libavcodec/x86/dsputil_mmx.c
libavcodec/x86/dsputil_mmx.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 12:32:29 +02:00
Michael Niedermayer
0724b4a16d
Merge commit '62844c3fd66940c7747e9b2bb7804e265319f43f'
...
* commit '62844c3fd66940c7747e9b2bb7804e265319f43f':
h264: Integrate clear_blocks calls with IDCT
Conflicts:
libavcodec/arm/h264idct_neon.S
libavcodec/h264idct_template.c
libavcodec/x86/h264_idct.asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 11:53:19 +02:00
Diego Biurrun
ac9362c5d9
Move misplaced file author information where it belongs
2013-04-11 02:42:11 +02:00
Ronald S. Bultje
b93b27edb0
dsputil: Make dsputil selectable
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:04:05 +03:00
Ronald S. Bultje
62844c3fd6
h264: Integrate clear_blocks calls with IDCT
...
The non-intra-pcm branch in hl_decode_mb (simple, 8bpp) goes from 700
to 672 cycles, and the complete loop of decode_mb_cabac and hl_decode_mb
(in the decode_slice loop) goes from 1759 to 1733 cycles on the clip
tested (cathedral), i.e. almost 30 cycles per mb faster.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:03:06 +03:00
Christophe Gisquet
2383068cbf
x86: sbrdsp: implement SSE2 qmf_pre_shuffle
...
From 253 to 51 cycles on Arrandale and Win64.
44 cycles on SandyBridge.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-10 02:42:22 +02:00
Ronald S. Bultje
610b18e2e3
x86: qpel: Move fullpel and l2 functions to a separate file
...
This way, they can be shared between mpeg4qpel and h264qpel without
requiring either one to be compiled unconditionally.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:38:33 +03:00
Christophe Gisquet
e2946e5c34
x86: sbrdsp: implement SSE qmf_deint_bfly
...
From 312 to 89/68 (sse/sse2) cycles on Arrandale and Win64.
Sandybridge: 68/47 cycles.
Having a loop counter is a 7 cycle gain.
Unrolling is another 7 cycle gain.
Working in reverse scan is another 6 cycles.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 02:26:34 +02:00
Michael Niedermayer
32bac65ba0
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: sbrdsp: Implement SSE neg_odd_64
Conflicts:
libavcodec/x86/sbrdsp.asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 13:30:19 +02:00
Christophe Gisquet
f4b0d12f5b
x86: sbrdsp: Implement SSE neg_odd_64
...
Timing on Arrandale:
C SSE
Win32: 57 44
Win64: 47 38
Unrolling and not storing mask both save some cycles.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-05 22:47:04 +02:00
Christophe Gisquet
37a9708391
x86: sbrdsp: implement SSE neg_odd_64
...
Timing on Arrandale:
C SSE
Win32: 57 44
Win64: 47 38
Unrolling and not storing mask both save some cycles.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 16:42:12 +02:00
Carl Eugen Hoyos
670bb1c979
Fix compilation with --enable-decoder=webp --disable-decoder=vp8
2013-03-30 08:25:44 +01:00
Michael Niedermayer
63a97d5674
Merge commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa'
...
* commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa':
cosmetics: Remove unnecessary extern keywords from function declarations
Conflicts:
libswscale/x86/swscale.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:20:41 +01:00
Diego Biurrun
b6649ab503
cosmetics: Remove unnecessary extern keywords from function declarations
2013-03-27 14:21:45 +01:00
Michael Niedermayer
ef8ab2f953
Merge commit '3b2d0ec473b036bdd0a5bc0d896fd5292915f44d'
...
* commit '3b2d0ec473b036bdd0a5bc0d896fd5292915f44d':
configure: Remove the mpegvideo dependency from svq1
x86: vc1dsp: Fix indentation
Conflicts:
configure
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 11:32:45 +01:00
Martin Storsjö
a2acadd058
x86: vc1dsp: Fix indentation
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 15:49:42 +02:00
Michael Niedermayer
9b9205e760
x86/dsputil.asm: make unaligned bswap actually work
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:07:46 +01:00
Michael Niedermayer
cb69a9dbf4
Merge commit 'e5c2794a7162e485eefd3133af5b98fd31386aeb'
...
* commit 'e5c2794a7162e485eefd3133af5b98fd31386aeb':
x86: consistently use unaligned movs in the unaligned bswap
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:07:37 +01:00
Michael Niedermayer
ea7b96af96
avcodec/x86/dsputil_qns_template: use av_assert
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 04:08:28 +01:00
Janne Grunau
e5c2794a71
x86: consistently use unaligned movs in the unaligned bswap
...
Fixes fate errors in asv1, ffvhuff and huffyuv on x86_32.
2013-03-25 12:11:11 +01:00
Martin Storsjö
285ff14413
x86: Change a missed occurrance of int to ptrdiff_t for strides
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-24 12:06:53 +02:00
Martin Storsjö
352dbdb96c
x86: Remove win64 xmm clobbering wrappers for the now removed avcodec_encode_video function
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-23 23:37:27 +02:00
Michael Niedermayer
b3e9f266e8
x86/mpegvideo: switch to av_assert
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-22 22:57:23 +01:00
Michael Niedermayer
cdbf8409ef
x86/h264_qpel: switch to av_assert
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-22 22:57:08 +01:00
Carl Eugen Hoyos
d98a5318fd
Fix compilation with --disable-mmx.
2013-03-22 13:00:50 +01:00
Michael Niedermayer
0f95534669
h264_qpel: fix another forgotten int stride
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-17 05:20:35 +01:00
Michael Niedermayer
c3bb2f7296
dsputil_mmx: remove unused variables
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 15:07:46 +01:00
Michael Niedermayer
db4e4f766c
Merge commit 'a8b6015823e628047a45916404c00044c5e80415'
...
* commit 'a8b6015823e628047a45916404c00044c5e80415':
dsputil: convert remaining functions to use ptrdiff_t strides
Conflicts:
libavcodec/dsputil.h
libavcodec/dsputil_template.c
libavcodec/h264qpel_template.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 14:18:53 +01:00
Ronald S. Bultje
3ced55d51c
Move x86 half-pel assembly from dsputil to hpeldsp.
2013-03-13 03:59:23 +01:00
Ronald S. Bultje
d1293512cf
vp3: use hpeldsp instead of dsputil for half-pel functions.
...
This makes vp3 independent of dsputil.
2013-03-13 03:55:33 +01:00
Michael Niedermayer
1f27053b91
Merge commit 'de27d2b92fa97deb2856d18e9f5f19586ce45a0f'
...
* commit 'de27d2b92fa97deb2856d18e9f5f19586ce45a0f':
lavc: remove disabled FF_API_LIBMPEG2 cruft
Conflicts:
libavcodec/avcodec.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 02:56:33 +01:00
Ronald S. Bultje
d85c9b036e
vp3/x86: use full transpose for all IDCTs.
...
This way, the special IDCT permutations are no longer needed. Bfin code
is disabled until someone updates it. This is similar to how H264 does
it, and removes the dsputil dependency imposed by the scantable code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 22:54:10 +01:00
Ronald S. Bultje
6a701306db
dsputil: make selectable.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 19:56:58 +01:00