Commit Graph

50 Commits

Author SHA1 Message Date
John Adcock 3f87f39cb8 Update x264 asm code to latest to add support for 64-bit Windows.
Use the new x86inc features to support 64-bit Windows on all non-x264 nasm
assembly code as well.
Patch by John Adcock, dscaler.johnad AT googlemail DOT com.
Win64 changes originally by Anton Mitrofanov.
x86util changes mostly by Holger Lubitz.

Originally committed as revision 19580 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-04 07:42:55 +00:00
Diego Biurrun 9be6f0d2f8 Do not check for both CONFIG_VC1_DECODER and CONFIG_WMV3_DECODER,
the former depends upon the latter.

Originally committed as revision 19533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-29 09:54:49 +00:00
Diego Biurrun 99e5a9d1ea Do not redundantly check for both CONFIG_THEORA_DECODER and CONFIG_VP3_DECODER.
The Theora decoder depends on the VP3 decoder.

Originally committed as revision 19492 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 22:27:10 +00:00
Carl Eugen Hoyos 36904c4c9f Icc 11.1 still does not align the stack pointer, disable some x264 functions.
Originally committed as revision 19454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-17 09:07:38 +00:00
Jason Garrett-Glaser 73b02e2460 SSE version of clear_blocks
Originally committed as revision 19206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-16 17:33:57 +00:00
Jason Garrett-Glaser 4f717c69ed idct_dc for VC-1/WMV3 decoder; ~11% faster decoding overall.
Includes mmx2 asm for the various functions.
Note that the actual idct still does not have an x86 SIMD implemtation.
For wmv3 files using regular idct, the decoder just falls back to simple_idct,
since simple_idct_dc doesn't exist (yet).

Originally committed as revision 19204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-16 09:00:55 +00:00
Ramiro Polla 74a841af8b Replace more uses of __attribute__((aligned)) by DECLARE_ALIGNED.
Originally committed as revision 19089 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-04 23:25:09 +00:00
Ramiro Polla 989b7181ac Use fewer macros in x86-optimized mlpdsp.
Fixes compilation on 32-bit llvm which didn't allow a cast in an m operand.

Originally committed as revision 19086 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-03 23:48:28 +00:00
Alexander Strange 2b9969a945 H264: Fix out of bounds reads in SSSE3 MC
Reading above src[-2] isn't safe, so move loads and palignr ahead
3 pixels to load starting at the first pixel actually used.

Fixes issue941.

Originally committed as revision 18999 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-30 22:19:14 +00:00
Ramiro Polla 7c4c60e520 mlp: Use LABEL_MANGLE() to export label symbols from inside asm block.
Originally committed as revision 18935 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-25 01:52:05 +00:00
Ramiro Polla 5624766d18 MLP DSP functions x86-optimized.
12.59% overall speedup in x86_32
 9.98% overall speedup in x86_64
compared to gcc 4.3.3

Originally committed as revision 18903 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-23 00:23:30 +00:00
David Conrad c21c835b8d avg_ pixel functions need to use (dst+pix+1)>>1 to average with existing
pixels, not (dst+pix)>>1.
This makes the mmx functions bitexact with the C functions.

Originally committed as revision 18527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 19:10:16 +00:00
David Conrad 9bf0fdf378 VC1: extend MMX qpel MC to include MMX2 avg qpel
Originally committed as revision 18519 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 02:25:42 +00:00
David Conrad 8013da7364 VC1: add and use avg_no_rnd chroma MC functions
Originally committed as revision 18518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:56:10 +00:00
David Conrad c374691b28 Rename put_no_rnd_h264_chroma* to reflect its usage in VC1 only
Originally committed as revision 18517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:55:39 +00:00
Michael Niedermayer cfe675269b Do not use SSE2 SAD for snow as it requires more alignment than can be
easily provided.
Fixes issue315.

Originally committed as revision 18404 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-09 21:53:48 +00:00
Stefano Sabatini 6b4343616c Rename FF_MM_MMXEXT to FF_MM_MMX2, for both clarity and consistency
with libswscale.

Originally committed as revision 18330 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-04 13:20:53 +00:00
Reimar Döffinger 0be9e73e38 Mark line_skip3 asm argument as output-only instead of using av_uninit.
Originally committed as revision 18327 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-03 14:03:49 +00:00
Reimar Döffinger d7460a9cac Mark put_signed_pixels_clamped_mmx output operands as early-clobber because
they are. Hopefully fixes some FATE errors, too.

Originally committed as revision 18326 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-03 14:02:34 +00:00
Reimar Döffinger 531a3d2721 Use DECLARE_ASM_CONST for non-global ff_vector128 constant used via MANGLE
Originally committed as revision 18325 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-03 14:01:24 +00:00
Alex Converse 3dd6531208 Rewrite put_signed_pixels_clamped_mmx() to eliminate mmx.h from dsputil_mmx.c.
Originally committed as revision 18319 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-02 21:02:42 +00:00
David Conrad 710441c2f6 Add SSE4 detection support
Originally committed as revision 18302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-01 09:11:32 +00:00
Matthieu Castet ecf05a5971 Remove useless casting in asm "m" operand.
Patch by Matthieu Castet, castet D matthieu A free D fr

Originally committed as revision 18054 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-19 23:29:11 +00:00
Zuxy Meng d05f808dc9 Remove CPUID availability check on AMD64 as it's architectural.
Originally committed as revision 17543 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-23 15:53:39 +00:00
Jason Garrett-Glaser e27ad11840 Convert x264 asm files to proper unix line breaks
Originally committed as revision 17524 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-22 11:35:32 +00:00
Jason Garrett-Glaser 9bd5f59b33 Remove (incorrect) filenames from x264 asm files, add descriptions.
Originally committed as revision 17523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-22 11:33:09 +00:00
Alexander Strange b6188c5a55 Put dispatch_tab in the rodata section for macho64.
This fixes linking shared libavcodec, since the linker doesn't allow
text relocations in shared libraries under Darwin/x86_64.

Based on a patch by Art Clarke (aclarke xuggle com)

Originally committed as revision 17197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-13 00:57:22 +00:00
Zuxy Meng ecb24904fe add SSE2 version of vp6_filter_diag
original patch by Zuxy Meng  zuxy.meng _at_ gmail _dot_ com

Originally committed as revision 17195 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-13 00:02:33 +00:00
Sebastien Lucas 6af3c226c3 add MMX version of vp6_filter_diag
original patch by Sebastien Lucas  sebastien.lucas _at_ gmail _dot_ com

Originally committed as revision 17194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-12 23:52:52 +00:00
Aurelien Jacobs 5110b25e1e convert ff_pw_64 into an xmm_reg for future use in vp6 sse code
Originally committed as revision 17192 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-12 23:48:07 +00:00
Diego Biurrun 15c13dde98 Fix wrong file name in header, noticed by David DeHaven, dave sagetv com.
Originally committed as revision 17158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-11 16:12:04 +00:00
Diego Biurrun d3a4b4e09c Add check whether the compiler/assembler supports 10 or more operands.
thanks to Loren for some help with the asm statements

Originally committed as revision 17151 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-11 11:16:00 +00:00
Stefan Gehrer e090c70f2f avoid duplicating dsputil's clear_block
Originally committed as revision 17135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-10 16:45:02 +00:00
Diego Biurrun ea399a87b2 Remove svn:executable property from source file.
Originally committed as revision 17098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-09 11:32:29 +00:00
Loren Merritt 3daa434a40 ff_add_hfyu_median_prediction_mmx2
overall ffvhuff decoding speedup: 28% on core2, 25% on k8.

Originally committed as revision 17059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 17:45:30 +00:00
Loren Merritt 6166516d1f re-enable mid_pred asm on x86_64. (broke in r16681)
Originally committed as revision 17058 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 17:44:04 +00:00
Baptiste Coudurier 353f87b8d4 fix typo in h264dsp_mmx (no effect currently as the function is not used), approved by Dark Shikari on IRC
Originally committed as revision 17046 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 06:35:21 +00:00
Diego Biurrun bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
David Conrad 137ae32760 Workaround for gcc 3.4 to align sh properly
Originally committed as revision 16797 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-26 03:40:48 +00:00
Diego Biurrun 406792e7b0 cosmetics: Remove pointless period after copyright statement non-sentences.
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Aurelien Jacobs 199436b952 moves mid_pred() into mathops.h (with arch specific code split by directory)
Originally committed as revision 16681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 22:57:40 +00:00
Aurelien Jacobs 49fb20cb8a replace all occurrence of ENABLE_ by the corresponding CONFIG_, HAVE_ or ARCH_
and remove all ENABLE_ definitions.

Originally committed as revision 16600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-14 17:19:17 +00:00
Aurelien Jacobs b250f9c66d Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +00:00
Ramiro Polla 1bb04d5a44 configure: allow to disable sse code.
Based on patch by Michael Kostylev <mik at it-1 dot ru>

Originally committed as revision 16490 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 23:38:54 +00:00
Diego Biurrun c47d146be8 Add missing 'void' keyword to parameterless function declarations.
Originally committed as revision 16436 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-05 13:57:43 +00:00
Mathieu Velten 21ff7689da Use H264 MMX chroma functions to accelerate RV40 decoding.
Patch by Mathieu Velten (matmaul A gmail)

Originally committed as revision 16419 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-04 01:36:11 +00:00
Jason Garrett-Glaser 37fed10087 Add x264 SSE2 iDCT functions to H.264 decoder.
Originally committed as revision 16409 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-03 00:46:17 +00:00
Carl Eugen Hoyos 2c67c65963 Fix h264 decoding on SSE2 cores with icc compilation.
Originally committed as revision 16373 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-28 19:40:13 +00:00
Jason Garrett-Glaser c1fc70362f Fix compilation without optimization under 64-bit with x264 deblock asm enabled.
Originally committed as revision 16313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-26 00:19:08 +00:00
Diego Biurrun a6493a8fbd Rename libavcodec/i386/ --> libavcodec/x86/.
It contains optimizations that are not specific to i386 and
libavutil uses this naming scheme already.

Originally committed as revision 16270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-22 09:12:42 +00:00