summaryrefslogtreecommitdiff
path: root/libavcodec/x86/vp8dsp-init.c
Commit message (Collapse)AuthorAge
* x86: Move some variable declarations below the appropriat #ifdef.Diego Biurrun2011-10-20
| | | | This avoids some unused variable warnings with YASM disabled.
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* 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
* Remove global mm_flags variableMåns Rullgård2010-08-24
| | | | Originally committed as revision 24909 to svn://svn.ffmpeg.org/ffmpeg/trunk
* VP8: move zeroing of luma DC block into the WHTJason Garrett-Glaser2010-08-02
| | | | | | | Lets us do the zeroing in asm instead of C. Also makes it consistent with the way the regular iDCT code does it. Originally committed as revision 24668 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use word-writing instead of dword-writing (with two cached but otherwiseRonald S. Bultje2010-07-31
| | | | | | | | | | unchanged bytes) in the horizontal simple loopfilter. This makes the filter quite a bit faster in itself (~30 cycles less on Core1), probably mostly because we don't need a complex 4x4 transpose, but only a simple byte interleave. Also allows using pextrw on SSE4, which speeds up even more (e.g. 25% faster on Core i7). Originally committed as revision 24638 to svn://svn.ffmpeg.org/ffmpeg/trunk
* VP8: optimize DC-only chroma case in the same way as luma.Jason Garrett-Glaser2010-07-23
| | | | | | | Add MMX idct_dc_add4uv function for this case. ~40% faster chroma idct. Originally committed as revision 24455 to svn://svn.ffmpeg.org/ffmpeg/trunk
* VP8: 30% faster idct_mbJason Garrett-Glaser2010-07-23
| | | | | | | | | | Take shortcuts based on statistically common situations. Add 4-at-a-time idct_dc function (mmx and sse2) since rows of 4 DC-only DCT blocks are common. TODO: tie this more directly into the MB mode, since the DC-level transform is only used for non-splitmv blocks? Originally committed as revision 24452 to svn://svn.ffmpeg.org/ffmpeg/trunk
* VP8: clear DCT blocks in iDCT instead of using clear_blocks.Jason Garrett-Glaser2010-07-23
| | | | | | ~0.3% faster overall. Originally committed as revision 24448 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use pextrw for SSE4 mbedge filter result writing, speedup 5-10cycles onRonald S. Bultje2010-07-22
| | | | | | CPUs supporting it. Originally committed as revision 24437 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix and enable horizontal >=SSE2 mbedge loopfilter.Ronald S. Bultje2010-07-22
| | | | Originally committed as revision 24409 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Various VP8 x86 deblocking speedupsJason Garrett-Glaser2010-07-21
| | | | | | | SSSE3 versions, improve SSE2 versions a bit. SSE2/SSSE3 mbedge h functions are currently broken, so explicitly disable them. Originally committed as revision 24403 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make mmx VP8 WHT fasterJason Garrett-Glaser2010-07-21
| | | | | | | Avoid pextrw, since it's slow on many older CPUs. Now it doesn't require mmxext either. Originally committed as revision 24397 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
* Chroma (width=8) inner loopfilter MMX/MMX2/SSE2 for VP8 decoder.Ronald S. Bultje2010-07-20
| | | | Originally committed as revision 24377 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Revert r24339 (it causes fate failures on x86-64) - I'll figure out what'sRonald S. Bultje2010-07-19
| | | | | | wrong with it tomorrow or so, then re-submit. Originally committed as revision 24341 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove FF_MM_SSE2/3 flags for CPUs where this is generally not faster thanRonald S. Bultje2010-07-19
| | | | | | | | | | | | | | regular MMX code. Examples of this are the Core1 CPU. Instead, set a new flag, FF_MM_SSE2/3SLOW, which can be checked for particular SSE2/3 functions that have been checked specifically on such CPUs and are actually faster than their MMX counterparts. In addition, use this flag to enable particular VP8 and LPC SSE2 functions that are faster than their MMX counterparts. Based on a patch by Loren Merritt <lorenm AT u washington edu>. Originally committed as revision 24340 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Implement chroma (width=8) inner loopfilter MMX/MMX2/SSE2 functions.Ronald S. Bultje2010-07-19
| | | | Originally committed as revision 24339 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change function prototypes for width=8 inner and mbedge loopfilter functionsRonald S. Bultje2010-07-19
| | | | | | | | | | | so that it does both U and V planes at the same time. This will have speed advantages when using SSE2 (or higher) optimizations, since we can do both the U and V rows together in a single xmm register. This also renames filter16 to filter16y and filter8 to filter8uv so that it's more obvious what each function is used for. Originally committed as revision 24337 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
* 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
* SSSE3 versions of vp8 width4 bilinear MC functionsJason Garrett-Glaser2010-07-03
| | | | Originally committed as revision 24013 to svn://svn.ffmpeg.org/ffmpeg/trunk
* SSSE3 versions of width4 VP8 6-tap MC functionsJason Garrett-Glaser2010-07-02
| | | | | | | | | Also make some small changes to saturation order of 4-tap SSSE3 MC to fix a non-bitexactness bug. Patch mostly by Eli Friedman <eli.friedman AT gmail DOT com>. Originally committed as revision 23965 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix 100L in vp8dsp asm initJason Garrett-Glaser2010-07-01
| | | | Originally committed as revision 23946 to svn://svn.ffmpeg.org/ffmpeg/trunk
* MMX idct_add for VP8.Ronald S. Bultje2010-06-29
| | | | Originally committed as revision 23886 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add mmxext version of VP8 DC Hadamard transformJason Garrett-Glaser2010-06-29
| | | | Originally committed as revision 23878 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change MMXEXT to MMX2, MMXEXT is deprecatedBaptiste Coudurier2010-06-28
| | | | Originally committed as revision 23865 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add x86 asm functions for VP8 put_pixelsJason Garrett-Glaser2010-06-28
| | | | Originally committed as revision 23858 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add MMX, SSE2, SSSE3 asm for VP8 bilinear MCJason Garrett-Glaser2010-06-28
| | | | Originally committed as revision 23857 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix build without yasmDavid Conrad2010-06-27
| | | | Originally committed as revision 23816 to svn://svn.ffmpeg.org/ffmpeg/trunk
* First shot at VP8 optimizations:Jason Garrett-Glaser2010-06-27
- MMXEXT, SSE2 and SSSE3 MC functions - MMX and SSE4 IDCT dc_add functions Patch by Jason Garrett-Glaser <darkshikari gmail com> and myself. Originally committed as revision 23815 to svn://svn.ffmpeg.org/ffmpeg/trunk