summaryrefslogtreecommitdiff
path: root/libavcodec/x86/dsputil_mmx.c
Commit message (Collapse)AuthorAge
* Port x86 10-bit H.264 deblock asm from x264Jason Garrett-Glaser2011-05-10
|
* Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 ↵Oskar Arvidsson2011-05-10
| | | | | | | | | | | | | | | | | decoder. This patch lets e.g. dsputil_init chose dsp functions with respect to the bit depth to decode. The naming scheme of bit depth dependent functions is <base name>_<bit depth>[_<prefix>] (i.e. the old clear_blocks_c is now named clear_blocks_8_c). Note: Some of the functions for high bit depth is not dependent on the bit depth, but only on the pixel size. This leaves some room for optimizing binary size. Preparatory patch for high bit depth h264 decoding support. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* dsputil: allow to skip drawing of top/bottom edges.Alexander Strange2011-03-26
|
* Add apply_window_int16() to DSPContext with x86-optimized versions and use itJustin Ruggles2011-03-22
| | | | in the ac3_fixed encoder.
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil_mmx.c: remove ff_vector128.Ronald S. Bultje2011-02-19
| | | | Remove ff_vector128, it is identical to ff_pb_80.
* dsputil: move VC1-specific stuff into VC1DSPContext.Ronald S. Bultje2011-02-17
|
* Separate format conversion DSP functions from DSPContext.Justin Ruggles2011-02-02
| | | | | | | This will be beneficial for use with the audio conversion API without requiring it to depend on all of dsputil. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Implement a SIMD version of emulated_edge_mc() for x86.Ronald S. Bultje2011-01-31
| | | | | From ~550 cycles (C version) to 170 (SSE/x86-64), 206 (MMX/x86-32) and 196 (SSE2/x86-32) cycles.
* cosmetics: indentationJustin Ruggles2011-01-31
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove unneeded add bias from 3 functions.Justin Ruggles2011-01-31
| | | | | | | | DSPContext.vector_fmul_window() DCADSPContext.lfe_fir() SynthFilterContext.synth_filter_float() Signed-off-by: Mans Rullgard <mans@mansr.com>
* Change DSPContext.vector_fmul() from dst=dst*src to dest=src0*src1.Justin Ruggles2011-01-22
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Replace ASMALIGN() with .p2alignMans Rullgard2011-01-18
| | | | | This macro has unconditionally used .p2align for a long time and serves no useful purpose.
* x86: remove VLA in ac3_downmix_sseMans Rullgard2011-01-18
|
* Fix ff_pw_3 alignment.Ronald S. Bultje2011-01-14
| | | | Originally committed as revision 26344 to svn://svn.ffmpeg.org/ffmpeg/trunk
* H.264: split luma dc idct out and implement MMX/SSE2 versionsJason Garrett-Glaser2011-01-14
| | | | | | | | | | About 2.5x the speed. NOTE: the way that the asm code handles large qmuls is a bit suboptimal. If x264-style dequant was used (separate shift and qmul values), it might be possible to get some extra speed. Originally committed as revision 26336 to svn://svn.ffmpeg.org/ffmpeg/trunk
* For rounding in chroma MC SSSE3, use 16-byte pw_3/4 instead of reading 8 bytesRonald S. Bultje2010-12-24
| | | | | | and then using movlhps to dup it into the higher half of the register. Originally committed as revision 26086 to svn://svn.ffmpeg.org/ffmpeg/trunk
* In yadif filter, declare asm constants directly to avoid dependency on ↵Baptiste Coudurier2010-12-06
| | | | | | libavcodec Originally committed as revision 25895 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 10l, add ff_pw_1 to dsputil_mmx for yadif sse2Baptiste Coudurier2010-12-04
| | | | Originally committed as revision 25881 to svn://svn.ffmpeg.org/ffmpeg/trunk
* dsputil: Use explicit movzbl instead of movzxİsmail Dönmez2010-11-01
| | | | | | | | This fixes compilation with the latest clang trunk version. Patch by İsmail Dönmez, ismail at namtrac dot org Originally committed as revision 25628 to svn://svn.ffmpeg.org/ffmpeg/trunk
* xmm_clobbers: list xmm registers first in clobber listRamiro Polla2010-10-31
| | | | | | | suncc does not like the leading commas inside the macro, but it has no problem with trailing commas. Originally committed as revision 25615 to svn://svn.ffmpeg.org/ffmpeg/trunk
* dsputil_mmx: add xmm registers to clobber listRamiro Polla2010-10-31
| | | | Originally committed as revision 25611 to svn://svn.ffmpeg.org/ffmpeg/trunk
* dsputil_mmx: prefer xmm registers below xmm6 when they are availableRamiro Polla2010-10-31
| | | | Originally committed as revision 25606 to svn://svn.ffmpeg.org/ffmpeg/trunk
* MMX, MMX2, SSE2 and SSSE3 optimizations for pred16x16/8x8_plane H264 intraRonald S. Bultje2010-10-05
| | | | | | | prediction (plus some with different rounding for svq3/rv40). Speedup (for SSSE3) about ~6-fold, 3.6% faster overall with cathedral sample. Originally committed as revision 25361 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use sse2 variant of put_pixels16() for no_rnd also. Provides a minor speedEli Friedman2010-09-29
| | | | | | | | increase to e.g. vc1, snow and mpeg decoding. Patch by Eli Friedman <eli dot friedman gmail com>. Originally committed as revision 25259 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move mm_support() from libavcodec to libavutil, make it a publicStefano Sabatini2010-09-08
| | | | | | function and rename it to av_get_cpu_flags(). Originally committed as revision 25076 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rename FF_MM_ symbols related to CPU features flags as AV_CPU_FLAG_Stefano Sabatini2010-09-04
| | | | | | symbols, and move them from libavcodec/avcodec.h to libavutil/cpu.h. Originally committed as revision 25040 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Port latest x264 deblock asm (before they moved to using NV12 as internalRonald S. Bultje2010-09-03
| | | | | | | format), LGPL'ed with permission from Jason and Loren. This includes mmx2 code, so remove inline asm from h264dsp_mmx.c accordingly. Originally committed as revision 25031 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split h264dsp_mmx.c (which was #included in dsputil_mmx.c) in h264_qpel_mmx.c,Ronald S. Bultje2010-09-01
| | | | | | | still #included in dsputil_mmx.c and is part of DSPContext, and h264dsp_mmx.c, which represents H264DSPContext and is now compiled on its own. Originally committed as revision 25018 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix compilation failure if yasm is disabled (missing vp3 symbols).Ronald S. Bultje2010-08-30
| | | | Originally committed as revision 24992 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move H264 chroma MC from inline asm to yasm. This fixes VP3/5/6 and VC-1Ronald S. Bultje2010-08-30
| | | | | | fate failures on Win64. Originally committed as revision 24989 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move VP3 IDCT functions from inline ASM to YASM. This fixes part of the VP3/5/6Ronald S. Bultje2010-08-30
| | | | | | issues on Win64. Originally committed as revision 24988 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Put ff_ prefix on non-static {put_signed,put,add}_pixels_clamped_mmx()Ronald S. Bultje2010-08-30
| | | | | | functions. Originally committed as revision 24987 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move vp6_filter_diag4() from DSPContext to VP56DSPContext.Ronald S. Bultje2010-08-25
| | | | Originally committed as revision 24921 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove global mm_flags variableMåns Rullgård2010-08-24
| | | | Originally committed as revision 24909 to svn://svn.ffmpeg.org/ffmpeg/trunk
* H.264: SSE2/SSSE3 weighted prediction asmEli Friedman2010-08-05
| | | | | | Patch by Eli Friedman <eli.friedman at gmail dot com> Originally committed as revision 24702 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move cavs dsp functions to their own structMåns Rullgård2010-08-03
| | | | Originally committed as revision 24685 to svn://svn.ffmpeg.org/ffmpeg/trunk
* relicense h264 deblock sse2 to lgplLoren Merritt2010-07-22
| | | | Originally committed as revision 24408 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move ff_pw_* from vc1dsp_mmx.c to dsputil_mmx.cDavid Conrad2010-07-21
| | | | | | Should fix compilation with icc and should help prevent any future duplicates Originally committed as revision 24380 to svn://svn.ffmpeg.org/ffmpeg/trunk
* VP8 MBedge loopfilter MMX/MMX2/SSE2 functions for both luma (width=16)Ronald S. Bultje2010-07-20
| | | | | | and chroma (width=8). Originally committed as revision 24378 to svn://svn.ffmpeg.org/ffmpeg/trunk
* VP8 H/V inner loopfilter MMX/MMXEXT/SSE2 optimizations.Ronald S. Bultje2010-07-15
| | | | Originally committed as revision 24250 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make ff_pw_4 128 bitsDavid Conrad2010-07-11
| | | | Originally committed as revision 24207 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Simple H/V loopfilter for VP8 in MMX, MMX2 and SSE2 (yay for yasm macros).Ronald S. Bultje2010-07-03
| | | | Originally committed as revision 24029 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add const to some pointer parameters.Eli Friedman2010-06-27
| | | | | | Patch by Eli Friedman, eli D friedman A gmail Originally committed as revision 23826 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 16x16 and 8x8c x86 SIMD intra pred functions for VP8 and H.264Jason Garrett-Glaser2010-06-25
| | | | Originally committed as revision 23783 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add bitexact versions of put_no_rnd_pixels8 _x2 and _y2 for vp3/theoraDavid Conrad2010-06-04
| | | | Originally committed as revision 23463 to svn://svn.ffmpeg.org/ffmpeg/trunk
* vp3: DC-only IDCTDavid Conrad2010-04-17
| | | | | | 2-4% faster overall decode Originally committed as revision 22896 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move H264 dsputil functions into their own structMåns Rullgård2010-03-16
| | | | | | | | | | | This moves the H264-specific functions from DSPContext to the new H264DSPContext. The code is made conditional on CONFIG_H264DSP which is set by the codecs requiring it. The qpel and chroma MC functions are not moved as these are used by non-h264 code. Originally committed as revision 22565 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Separate DWT from snow and dsputilMåns Rullgård2010-03-14
| | | | | | | | This moves the DWT functions from snow.c and dsputil.c to a file of their own. A new struct, DWTContext, holds the function pointers previously part of DSPContext. Originally committed as revision 22522 to svn://svn.ffmpeg.org/ffmpeg/trunk
* x86: move function prototypes to header filesMåns Rullgård2010-03-06
| | | | Originally committed as revision 22266 to svn://svn.ffmpeg.org/ffmpeg/trunk