Ronald S. Bultje
cd86eb265f
avcodec/x86/videodsp: fix a bug in a %if statement where we used '%%' instead of '&&'.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 15:02:48 +01:00
Michael Niedermayer
41efb8d9a7
avcodec/x86/cabac: include get_cabac_bypass_sign_x86() under #if !BROKEN_COMPILER
...
this might fix Ticket2999 as well as some fate clients
untested as the original patch submitter no longer has the environment to test
this should be reverted if it does not fix the issues
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 15:06:55 +02:00
Ronald S. Bultje
1b3a7e1f42
avcodec/x86/videodsp: Properly mark sse2 instructions in emulated_edge_mc x86 simd as such.
...
Should fix crashes or corrupt output on pre-SSE2 CPUs when they were
using SSE2-code (e.g. AMD Athlon XP 2400+ or Intel Pentium III) in
hfix or hvar single-edge (left/right) extension functions.
Tested-by: Ingo Brückl <ib@wupperonline.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-24 13:36:55 +02:00
Michael Niedermayer
c35d29a9c8
avcodec/x86/dsputil_init: move ff_idct_xvid_mmxext init
...
This decreases the diff to libav
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-15 02:06:12 +02:00
Michael Niedermayer
ab8cbfe0dd
avcodec/x86/dsputil_init: remove duplicated sse2 idct init
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-15 01:59:36 +02:00
Michael Niedermayer
1bf8fa75ee
avcodec/x86/dsputil_init: fix cpu flag checks
...
Fixes linking failure with --disable-sse2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-15 01:46:21 +02:00
Ronald S. Bultje
20d78a8606
libavcodec/x86: Fix emulated_edge_mc SSE code to not contain SSE2 instructions on x86-32.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-10 13:36:06 +02:00
Ronald S. Bultje
ad75d2b590
x86: Fix compilation with nasm on PPC & OS/2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-08 12:36:19 +02:00
Michael Niedermayer
deb5addcff
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: h264_idct: Update comments to match 8/10-bit depth optimization split
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-08 12:10:02 +02:00
Michael Niedermayer
1f17619fe4
Merge commit 'bbe4a6db44f0b55b424a5cc9d3e89cd88e250450'
...
* commit 'bbe4a6db44f0b55b424a5cc9d3e89cd88e250450':
x86inc: Utilize the shadow space on 64-bit Windows
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-08 11:23:00 +02:00
Ronald S. Bultje
ba9c557b92
avcodec/x86/vp9dsp: Fix compilation with nasm.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-08 02:27:12 +02:00
Diego Biurrun
6405ca7d4a
x86: h264_idct: Update comments to match 8/10-bit depth optimization split
2013-10-07 21:46:46 +02:00
Henrik Gramner
bbe4a6db44
x86inc: Utilize the shadow space on 64-bit Windows
...
Store XMM6 and XMM7 in the shadow space in functions that
clobbers them. This way we don't have to adjust the stack
pointer as often, reducing the number of instructions as
well as code size.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-10-07 06:25:35 -04:00
Michael Niedermayer
b67cb58520
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: fdct: Employ more specific ifdefs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-07 11:37:47 +02:00
Diego Biurrun
ce1e8045e0
x86: fdct: Employ more specific ifdefs
...
This avoids building mmxext and sse2 code when disabled by configure.
2013-10-06 22:02:25 +02:00
Michael Niedermayer
c86955d24a
Merge commit '2ddb35b91131115c094d90e04031451023441b4d'
...
* commit '2ddb35b91131115c094d90e04031451023441b4d':
x86: dsputil: Separate ff_add_hfyu_median_prediction_cmov from dsputil_mmx
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-06 11:50:01 +02:00
Michael Niedermayer
7fb123429e
Merge commit '258414d0771845d20f646ffe4d4e60f22fba217c'
...
* commit '258414d0771845d20f646ffe4d4e60f22fba217c':
x86: fdct: Initialize optimized fdct implementations in the standard way
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-06 11:31:01 +02:00
Michael Niedermayer
d0b2703676
Merge commit '0b8b2ae5e93d616c2ece59f7175f483154cff918'
...
* commit '0b8b2ae5e93d616c2ece59f7175f483154cff918':
x86: xviddct: Employ more specific ifdefs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-06 11:25:22 +02:00
Diego Biurrun
2ddb35b911
x86: dsputil: Separate ff_add_hfyu_median_prediction_cmov from dsputil_mmx
...
The function does not depend on MMX and compilation without MMX enabled
fails if the function is compiled conditional on MMX availability.
2013-10-05 19:21:15 +02:00
Diego Biurrun
258414d077
x86: fdct: Initialize optimized fdct implementations in the standard way
2013-10-05 18:20:52 +02:00
Diego Biurrun
0b8b2ae5e9
x86: xviddct: Employ more specific ifdefs
...
This avoids building mmxext and sse2 code when disabled by configure.
2013-10-05 18:14:58 +02:00
Michael Niedermayer
9d8e8495c9
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: fdct: Only build fdct code if encoders have been enabled
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-04 14:36:58 +02:00
Diego Biurrun
6cc133ec58
x86: fdct: Only build fdct code if encoders have been enabled
...
fdct is only initialized if encoders are enabled.
2013-10-04 10:50:44 +02:00
Ronald S. Bultje
f1548c008f
Full-pixel MC functions.
...
Decoding time of ped1080p.webm goes from 11.3sec to 11.1sec.
2013-10-02 21:03:15 -04:00
Ronald S. Bultje
c07ac8d467
VP9 MC (ssse3) optimizations.
...
Decoding time of ped1080p.webm goes from 20.7sec to 11.3sec.
2013-10-02 21:03:15 -04:00
Ronald S. Bultje
face578d56
Rewrite emu_edge functions to have separate src/dst_stride arguments.
...
This allows supporting files for which the image stride is smaller than
the max. block size + number of subpel mc taps, e.g. a 64x64 VP9 file
or a 16x16 VP8 file with -fflags +emu_edge.
2013-09-28 20:28:08 -04:00
Ronald S. Bultje
c341f734e5
Convert multiplier for MV from int to ptrdiff_t.
...
This prevents emulated_edge_mc from not undoing mvy*stride-related
integer overflows.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-28 11:28:09 +02:00
Martin Storsjö
ede42109e7
x86: Add an xmm clobbering wrapper for avcodec_encode_video2
...
This is required since 187105ff8
when we started trying to
wrap this function as well.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-17 10:53:23 +02:00
Martin Storsjö
1daea5232f
x86: Add an xmm clobbering wrapper for avcodec_encode_video2
...
This is required since 187105ff8
when we started trying to
wrap this function as well.
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-09-16 22:22:41 +03:00
Hendrik Leppkes
a06a5b78e2
mathops/x86: work around inline asm miscompilation with GCC 4.8.1
...
The volatile is not required here, and prevents a miscompilation with GCC
4.8.1 when building on x86 with --cpu=i686
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-09-15 11:15:07 -04:00
Michael Niedermayer
2ffead98dd
avcodec: add emuedge_linesize_type
...
Currently all uses of the emu edge code as well as the code itself
assume int linesize
changing some but not changing all would introduce a security issue
once all use this typedef a simple search and replace can be
done to switch them all to ptrdiff_t
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-04 14:29:20 +02:00
Paul B Mahol
6053812814
x86/simple_idct: use LOCAL_ALIGNED instead of DECLARE_ALIGNED
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-09-03 17:02:49 +00:00
Thilo Borgmann
d814a839ac
Reinstate proper FFmpeg license for all files.
2013-08-30 15:47:38 +00:00
Carl Eugen Hoyos
8fe1fb41ac
Fix compilation with --disable-mmx.
2013-08-30 15:21:15 +02:00
Michael Niedermayer
62a6052974
Merge commit 'e998b56362c711701b3daa34e7b956e7126336f4'
...
* commit 'e998b56362c711701b3daa34e7b956e7126336f4':
x86: avcodec: Consistently structure CPU extension initialization
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 12:50:01 +02:00
Michael Niedermayer
7fb758cd8e
avcodec/x86/lpc: Fix cpu flag checks so they work
...
Broken by 6369ba3c9c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 12:34:52 +02:00
Michael Niedermayer
c1913064e3
avcodec/x86/vp8dsp: Fix cpu flag checks so they work
...
Broken by 6369ba3c9c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 12:33:56 +02:00
Michael Niedermayer
8be0e2bd43
Merge commit '6369ba3c9cc74becfaad2a8882dff3dd3e7ae3c0'
...
* commit '6369ba3c9cc74becfaad2a8882dff3dd3e7ae3c0':
x86: avcodec: Use convenience macros to check for CPU flags
Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/hpeldsp_init.c
libavcodec/x86/motion_est.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-30 12:08:28 +02:00
Michael Niedermayer
37494bdb0d
Merge commit 'cd529172377229f2e86987869ccc08f426bfe114'
...
* commit 'cd529172377229f2e86987869ccc08f426bfe114':
x86: rv40dsp: Move inline assembly optimizations out of YASM init section
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-29 14:48:46 +02:00
Michael Niedermayer
477641e9f8
Merge commit 'a64f6a04ac5773aeff2003897455dadb9609f18b'
...
* commit 'a64f6a04ac5773aeff2003897455dadb9609f18b':
dsputil: x86: Hide arch-specific initialization details
Conflicts:
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-29 14:32:05 +02:00
Diego Biurrun
e998b56362
x86: avcodec: Consistently structure CPU extension initialization
2013-08-29 13:07:37 +02:00
Diego Biurrun
6369ba3c9c
x86: avcodec: Use convenience macros to check for CPU flags
2013-08-29 13:07:37 +02:00
Diego Biurrun
cd52917237
x86: rv40dsp: Move inline assembly optimizations out of YASM init section
2013-08-28 23:59:24 +02:00
Diego Biurrun
a64f6a04ac
dsputil: x86: Hide arch-specific initialization details
...
Also give consistent names to init functions.
2013-08-28 23:59:24 +02:00
Michael Niedermayer
f9418d156f
Merge commit '8506ff97c9ea4a1f52983497ecf8d4ef193403a9'
...
* commit '8506ff97c9ea4a1f52983497ecf8d4ef193403a9':
vp56: Mark VP6-only optimizations as such.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-24 11:04:11 +02:00
Diego Biurrun
8506ff97c9
vp56: Mark VP6-only optimizations as such.
...
Most of our VP56 optimizations are VP6-only and will stay that way.
So avoid compiling them for VP5-only builds.
2013-08-23 14:42:19 +02:00
Michael Niedermayer
f903b42663
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
x86: Split DCT and FFT initialization into separate files
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-22 14:28:42 +02:00
Michael Niedermayer
503aec1425
Merge commit '0b45269c2d732d15afa2de9c475d85fcf5561ac4'
...
* commit '0b45269c2d732d15afa2de9c475d85fcf5561ac4':
x86: h264_idct: Remove incorrect comment
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-22 13:04:07 +02:00
Diego Biurrun
e7b31844f6
x86: Split DCT and FFT initialization into separate files
2013-08-21 20:15:27 +02:00
Diego Biurrun
0b45269c2d
x86: h264_idct: Remove incorrect comment
2013-08-21 15:09:58 +02:00