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
Luca Barbato
a8b6015823
dsputil: convert remaining functions to use ptrdiff_t strides
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-03-12 18:26:42 +01:00
Ronald S. Bultje
22cc8a103c
x86/qpel: move fullpel and l2 functions to separate file.
...
This way, they can be shared between mpeg4qpel and h264qpel without
requiring either one to be compiled unconditionally.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-09 17:25:30 +01:00
Michael Niedermayer
1a7166a58d
Merge commit 'e8c52271c45ec27d783e74238dcfad0c2008731c'
...
* commit 'e8c52271c45ec27d783e74238dcfad0c2008731c':
Revert "Move H264/QPEL specific asm from dsputil.asm to h264_qpel_*.asm."
Conflicts:
libavcodec/x86/dsputil.asm
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-01 13:39:47 +01:00
Diego Biurrun
e8c52271c4
Revert "Move H264/QPEL specific asm from dsputil.asm to h264_qpel_*.asm."
...
This reverts commit f90ff772e7e35b4923c2de429d1fab9f2569b568.
The code should be put back in h264_qpel_8bit.asm, but unfortunately
it is unconditionally used from dsputil_mmx.c since 71155d7.
2013-02-28 21:50:02 +01:00
Michael Niedermayer
50c2738883
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: dsputil: Drop some unused function #defines
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 12:35:18 +01:00
Michael Niedermayer
cdb9752a0f
Merge commit '845cfc92f908791714b8c4c8a49c91b8c64b685e'
...
* commit '845cfc92f908791714b8c4c8a49c91b8c64b685e':
x86: dsputil: Drop aliasing of ff_put_pixels8_mmx to ff_put_pixels8_mmxext
Conflicts:
libavcodec/x86/dsputil_mmx.c
Note, the commit message is wrong, there are no mmxext instructions as
claimed in the function. The change should do no harm though
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 12:22:10 +01:00
Michael Niedermayer
04ec796bda
Merge commit '096cc11ec102701a18951b4f0437d609081ca1dd'
...
* commit '096cc11ec102701a18951b4f0437d609081ca1dd':
x86: vc1dsp: Move ff_avg_vc1_mspel_mc00_mmxext out of dsputil_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 11:59:31 +01:00
Michael Niedermayer
f2bbc2ffc3
Merge commit '31a23a0dc663bd42bf593275971b4277a479b73d'
...
* commit '31a23a0dc663bd42bf593275971b4277a479b73d':
x86: dsputil_mmx: Remove leftover inline assembly fragments
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 11:50:51 +01:00
Diego Biurrun
ebc701993f
x86: dsputil: Drop some unused function #defines
2013-02-26 23:36:24 +01:00
Diego Biurrun
845cfc92f9
x86: dsputil: Drop aliasing of ff_put_pixels8_mmx to ff_put_pixels8_mmxext
...
The external assembly function uses mmxext instructions and should not be
masqueraded as an mmx-only function. Instead, use the mmx-only inline
assembly function.
2013-02-26 23:36:24 +01:00
Diego Biurrun
096cc11ec1
x86: vc1dsp: Move ff_avg_vc1_mspel_mc00_mmxext out of dsputil_mmx.c
2013-02-26 23:36:24 +01:00
Martin Storsjö
31a23a0dc6
x86: dsputil_mmx: Remove leftover inline assembly fragments
...
These became unused in 71155d7b.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-27 00:17:05 +02:00
Michael Niedermayer
a984efd104
Merge commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f'
...
* commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f':
Remove unnecessary dsputil.h #includes
Conflicts:
libavcodec/ffv1.c
libavcodec/h261dec.c
libavcodec/h261enc.c
libavcodec/h264pred.c
libavcodec/lpc.h
libavcodec/mjpegdec.c
libavcodec/rectangle.h
libavcodec/x86/idct_sse2_xvid.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-26 13:05:10 +01:00
Diego Biurrun
c242bbd8b6
Remove unnecessary dsputil.h #includes
2013-02-26 00:51:34 +01:00
Matt Wolenetz
82a4a4e7ca
Fix Win64 AVX h264_deblock by not using redzone on Win64
...
Thanks-to: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-21 22:38:56 +01:00
Matt Wolenetz
311443f6c7
x86: h264: Don't use redzone in AVX h264_deblock on Win64
...
This fixes crashes in chromium on win64 on machines with AVX
(crashes that apparently aren't triggered by fate).
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-21 15:02:16 +02:00