Commit Graph

1399 Commits

Author SHA1 Message Date
Diego Biurrun
19e30a58fc Deprecate obsolete XvMC hardware decoding support
XvMC has long ago been superseded by newer acceleration APIs, such as
VDPAU, and few downstreams still support it. Furthermore XvMC is not
implemented within the hwaccel framework, but requires its own specific
code in the MPEG-1/2 decoder, which is a maintenance burden.
2013-11-13 21:07:45 +01:00
Michael Niedermayer
a30f7918b5 Merge commit '0338c396987c82b41d322630ea9712fe5f9561d6'
* commit '0338c396987c82b41d322630ea9712fe5f9561d6':
  dsputil: Split off H.263 bits into their own H263DSPContext

Conflicts:
	configure
	libavcodec/mpegvideo.h
	libavcodec/mpegvideo_enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-08 17:42:56 +01:00
Diego Biurrun
0338c39698 dsputil: Split off H.263 bits into their own H263DSPContext 2013-11-08 12:40:47 +01:00
Clément Bœsch
87434cf373 avcodec/vp9: add ff_vp9_idct_idct_{4x4,8x8}_ssse3().
1789 decicycles in idct_idct_4x4_add_c, 262136 runs, 8 skips
1839 decicycles in idct_idct_4x4_add_c, 524270 runs, 18 skips
1864 decicycles in idct_idct_4x4_add_c, 1048548 runs, 28 skips

529 decicycles in ff_vp9_idct_idct_4x4_add_ssse3, 262138 runs, 6 skips
516 decicycles in ff_vp9_idct_idct_4x4_add_ssse3, 524282 runs, 6 skips
474 decicycles in ff_vp9_idct_idct_4x4_add_ssse3, 1048565 runs, 11 skips

(~3.9x faster)

7726 decicycles in idct_idct_8x8_add_c, 1048433 runs, 143 skips
7732 decicycles in idct_idct_8x8_add_c, 2096882 runs, 270 skips
7731 decicycles in idct_idct_8x8_add_c, 4193772 runs, 532 skips

1145 decicycles in ff_vp9_idct_idct_8x8_add_ssse3, 1048549 runs, 27 skips
1137 decicycles in ff_vp9_idct_idct_8x8_add_ssse3, 2097097 runs, 55 skips
1086 decicycles in ff_vp9_idct_idct_8x8_add_ssse3, 4194188 runs, 116 skips

(~7.1x faster)

Overall decode time before commit:
  16.48s user 0.03s system 99% cpu 16.526 total
  16.54s user 0.01s system 99% cpu 16.566 total
  16.46s user 0.03s system 99% cpu 16.511 total

Overall decode time after commit:
  16.34s user 0.02s system 99% cpu 16.378 total
  16.28s user 0.02s system 99% cpu 16.315 total
  16.32s user 0.03s system 99% cpu 16.366 total

Tested on i7 920 with 40s 1080p footage.
2013-11-05 19:25:40 +01:00
Michael Niedermayer
934e489ee8 Merge commit 'e2b5b097898c9155f4bdff4d83cdc54d5eef6930'
* commit 'e2b5b097898c9155f4bdff4d83cdc54d5eef6930':
  x86: rv40dsp: Use PAVGB instruction macro where appropriate

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-05 10:26:07 +01:00
Diego Biurrun
e2b5b09789 x86: rv40dsp: Use PAVGB instruction macro where appropriate 2013-11-04 21:14:39 +01:00
Mikulas Patocka
694d997afe x86: hpeldsp: Use PAVGB instruction macro where necessary
Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-11-04 01:29:23 +01:00
Mikulas Patocka
074155360d avcodec/x86/hpeldsp: fix crash on AMD K6-3+
There are instructions pavgb and pavgusb. Both instructions do the same
operation but they have different enconding. Pavgb exists in SSE (or
MMXEXT) instruction set and pavgusb exists in 3D-NOW instruction set.

livavcodec uses the macro PAVGB to select the proper instruction. However,
the function avg_pixels8_xy2 doesn't use this macro, it uses pavgb
directly.

As a consequence, the function avg_pixels8_xy2 crashes on AMD K6-2 and
K6-3 processors, because they have pavgusb, but not pavgb.

This bug seems to be introduced by commit
71155d7b41, "dsputil: x86: Convert mpeg4
qpel and dsputil avg to yasm"

Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-03 19:49:11 +01:00
Michael Niedermayer
7146eacfc5 Merge commit '1700b4e678ed329611a16b20d11e64b7abda4839'
* commit '1700b4e678ed329611a16b20d11e64b7abda4839':
  x86: vp8dsp: Split loopfilter code into a separate file

Conflicts:
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-02 10:13:14 +01:00
Diego Biurrun
1700b4e678 x86: vp8dsp: Split loopfilter code into a separate file 2013-11-01 22:05:20 +01:00
Michael Niedermayer
fa6fa2162b avcodec/cabac: support UNCHECKED_BITSTREAM_READER = 0
Fixes overreads in HEVC
Fixes Ticket3070
Also fixed remaining issues from Ticket3075 and Ticket3076

Some lines of code taken from  0c5f839693da2276c2da23400f67a67be4ea0af1:libavcodec/x86/cabac.h
and                            0c5f839693da2276c2da23400f67a67be4ea0af1:libavcodec/cabac_functions.h

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-31 11:13:27 +01:00
Ronald S. Bultje
960490c0b2 avcodec/x86/videodsp: Small speedups in ff_emulated_edge_mc x86 SIMD.
Don't use word-size multiplications if size == 2, and if we're using
SIMD instructions (size >= 8), complete leftover 4byte sets using movd,
not mov. Both of these changes lead to minor speedups.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-27 15:02:48 +01:00
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
Michael Niedermayer
9d01bf7d66 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Consistently use "cpu_flags" as variable/parameter name for CPU flags

Conflicts:
	libavcodec/x86/dsputil_init.c
	libavcodec/x86/h264dsp_init.c
	libavcodec/x86/hpeldsp_init.c
	libavcodec/x86/motion_est.c
	libavcodec/x86/mpegvideo.c
	libavcodec/x86/proresdsp_init.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-18 09:53:47 +02:00
Diego Biurrun
3ac7fa81b2 Consistently use "cpu_flags" as variable/parameter name for CPU flags 2013-07-18 00:31:35 +02:00
Christophe Gisquet
b6293e2798 fmtconvert: Explicitly use int32_t instead of int
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-07-17 11:02:47 +03:00
Michael Niedermayer
9d47333e3e Merge commit '2b379a925162b6783bd9a81dc03e647e8b65494c'
* commit '2b379a925162b6783bd9a81dc03e647e8b65494c':
  mlpdsp: x86: Respect cpuflags

Conflicts:
	libavcodec/x86/mlpdsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-12 13:10:53 +02:00
Luca Barbato
2b379a9251 mlpdsp: x86: Respect cpuflags 2013-07-12 04:34:49 +02:00
Michael Niedermayer
707b2135fd libavcodec/x86/mpegvideo: Move mmx functions under HAVE_MMX_INLINE
should fix ticket2755

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 01:50:59 +02:00
Michael Niedermayer
abce6dfd9e avcodec/x86/vp3dsp_init: move mmx functions under HAVE_MMX_INLINE
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-07 01:50:59 +02:00
Michael Niedermayer
66537c7efd avcodec/x86/cabac: Disable get_cabac_bypass_x86() on broken llvm/clang
This should fix fate on these platforms

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-06 16:24:27 +02:00
Michael Niedermayer
32de28053d avcodec/x86/cabac: factorize broken llvm/clang check out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-06 16:24:27 +02:00
Michael Niedermayer
cced6f4d58 Merge commit 'e6d8acf6a8fba4743eb56eabe72a741d1bbee3cb'
* commit 'e6d8acf6a8fba4743eb56eabe72a741d1bbee3cb':
  indeo: use a typedef for the mc function pointer
  cabac: x86 version of get_cabac_bypass
  aic: use chroma scan tables while decoding luma component in progressive mode

Conflicts:
	libavcodec/aic.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-05 11:41:30 +02:00
Jason Garrett-Glaser
d222f6e39e cabac: x86 version of get_cabac_bypass
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-07-04 16:06:10 +02:00
Michael Niedermayer
b791a0831b avcodec/x86/dsputil_init: only use xvid idct for lowres=0
Fixes crash
Fixes Ticket2714

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-01 20:56:37 +02:00
Hendrik Leppkes
659df32a9d 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>
2013-06-21 12:47:03 +02:00
Michael Niedermayer
3a0e21f037 Merge commit '186599ffe0a94d587434e5e46e190e038357ed99'
* commit '186599ffe0a94d587434e5e46e190e038357ed99':
  build: cosmetics: Place unconditional before conditional OBJS lines

Conflicts:
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-30 10:49:43 +02:00
Diego Biurrun
186599ffe0 build: cosmetics: Place unconditional before conditional OBJS lines
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-30 02:17:31 +03:00
Christophe Gisquet
f49564c607 fmtconvert: int32_t input to int32_to_float_fmul_scalar
It was previously declared as int.
Does not change fate results for x86.

Conflicts:

	libavcodec/ppc/fmtconvert_altivec.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-18 18:01:16 +02:00
Michael Niedermayer
0d83b5722e Merge commit '9cacdabd1c8cd257a942d8289349c37d992989b7'
* commit '9cacdabd1c8cd257a942d8289349c37d992989b7':
  jpegls: cosmetics: Drop some unnecessary parentheses
  mpegvideo: Remove commented-out PARANOID debug cruft

Conflicts:
	libavcodec/jpegls.c
	libavcodec/mpegvideo.c
	libavcodec/x86/mpegvideo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-16 09:19:11 +02:00
Diego Biurrun
004b81c465 mpegvideo: Remove commented-out PARANOID debug cruft 2013-05-15 23:53:42 +02:00
Michael Niedermayer
a887372109 Merge commit '1399931d07f0f37ef4526eb8d39d33c64e09618a'
* commit '1399931d07f0f37ef4526eb8d39d33c64e09618a':
  x86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.h

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-14 12:12:20 +02:00
Michael Niedermayer
b2da63db50 Merge commit '245b76a108585b6fb52eebc2626c472d6fa530dc'
* commit '245b76a108585b6fb52eebc2626c472d6fa530dc':
  x86: dsputil: Split inline assembly from init code

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Note, the author attribution is left in place and not removed
as it is in the merged commit.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-14 11:19:20 +02:00
Michael Niedermayer
eda9d97b7a Merge commit '46bb456853b197f4562de7acf5d42abf11ded9be'
* commit '46bb456853b197f4562de7acf5d42abf11ded9be':
  x86: dsputil: Refactor pixels16 wrapper functions with a macro

Conflicts:
	libavcodec/x86/hpeldsp_avg_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-14 10:18:46 +02:00
Michael Niedermayer
69d52ef8ff Merge commit 'f54b55058a429c4eea5bae7e5bcb49bd29b34199'
* commit 'f54b55058a429c4eea5bae7e5bcb49bd29b34199':
  configure: Rename cmov processor capability to i686

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-13 11:29:40 +02:00
Diego Biurrun
1399931d07 x86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.h
The header is not (anymore) MMX-specific.
2013-05-12 22:28:07 +02:00
Diego Biurrun
245b76a108 x86: dsputil: Split inline assembly from init code
Also remove some pointless comments.
2013-05-12 22:28:07 +02:00
Diego Biurrun
46bb456853 x86: dsputil: Refactor pixels16 wrapper functions with a macro 2013-05-12 22:28:07 +02:00
Diego Biurrun
f54b55058a configure: Rename cmov processor capability to i686
The goal is to make the capapility slightly more general and have it
cover the availability of the nopl instruction in addition to cmov.
2013-05-12 21:23:38 +02:00
Michael Niedermayer
5e1278c640 Merge commit '2c299d4165cd9653153e12270971c2368551b79e'
* commit '2c299d4165cd9653153e12270971c2368551b79e':
  x86: sbrdsp: implement SSE2 qmf_pre_shuffle

Conflicts:
	libavcodec/x86/sbrdsp.asm
	libavcodec/x86/sbrdsp_init.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-10 23:16:09 +02:00
Christophe Gisquet
2c299d4165 x86: sbrdsp: implement SSE2 qmf_pre_shuffle
From 253 to 51 cycles on Arrandale and Win64.
44 cycles on SandyBridge.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-10 09:31:27 +02:00
Michael Niedermayer
769efe56b1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: dsputil: Remove unused argument from QPEL_OP macro

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-09 11:55:46 +02:00
Michael Niedermayer
bda5487d92 Merge commit '3d40c1ee742db5f13ebcf53c2d1fa4bf4f39bcd2'
* commit '3d40c1ee742db5f13ebcf53c2d1fa4bf4f39bcd2':
  x86: dsputil: Move TRANSPOSE4 macro to the only place it is used

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-09 11:43:00 +02:00
Michael Niedermayer
164899c6e8 Merge commit '71469f3b636fbe06b6aca5933f9fdebddd8d5f57'
* commit '71469f3b636fbe06b6aca5933f9fdebddd8d5f57':
  x86: dsputil: Move constant declarations into separate header

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-09 11:36:29 +02:00
Michael Niedermayer
5747d835c7 Merge commit 'ed880050edf061b38d3e39e25657c59ad9108b27'
* commit 'ed880050edf061b38d3e39e25657c59ad9108b27':
  x86: dsputil: Group all assembly constants together in constants.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-09 11:23:40 +02:00
Michael Niedermayer
3469c24a10 Merge commit '87614667606b42476f9017d79faf12b45a0bd77c'
* commit '87614667606b42476f9017d79faf12b45a0bd77c':
  x86: dsputil: Move ff_pd assembly constants to the only place they are used

Conflicts:
	libavcodec/x86/lpc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-09 11:01:14 +02:00
Diego Biurrun
f243bf7aa2 x86: dsputil: Remove unused argument from QPEL_OP macro 2013-05-08 18:18:58 +02:00
Diego Biurrun
3d40c1ee74 x86: dsputil: Move TRANSPOSE4 macro to the only place it is used 2013-05-08 18:18:23 +02:00
Diego Biurrun
71469f3b63 x86: dsputil: Move constant declarations into separate header 2013-05-08 18:18:23 +02:00
Michael Niedermayer
e3869dd17e Merge commit '1b343cedd7cd68e7865aa5280d1568c7e5d79917'
* commit '1b343cedd7cd68e7865aa5280d1568c7e5d79917':
  x86: dsputil: Remove unused ff_pb_3F constant
  x86: dsputil: Remove unused MOVQ_BONE macro

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 14:13:48 +02:00
Michael Niedermayer
69d2eff5af Merge commit '63bac48f734fc69cca2ef2cfada92cd9a222734d'
* commit '63bac48f734fc69cca2ef2cfada92cd9a222734d':
  x86: dsputil: Move rv40-specific functions where they belong

Conflicts:
	libavcodec/x86/dsputil_mmx.c
	libavcodec/x86/dsputil_mmx.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-08 14:08:00 +02:00