summaryrefslogtreecommitdiff
path: root/libavcodec/x86/vc1dsp_mmx.c
Commit message (Collapse)AuthorAge
* x86: kill fpel_mmx.cChristophe Gisquet2014-05-21
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* vc1dsp: fix build without inline asmHendrik Leppkes2014-04-22
| | | | | Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* vc1dsp: introduce cases for 8x8 and 16x16Christophe Gisquet2014-04-20
| | | | | | | | | | | | This allows further unrolling the DSP implementation where possible. x86 and ARM DSP modified by simply moving the multiple calls from vc1dec to the DSP code. Decoding improvements should only occurs because of the compiler actually able to unroll more. Decoding time: ~8.80s -> 8.64s (ie around 2%) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Fix compilation with !HAVE_6REGS.Carl Eugen Hoyos2014-04-19
| | | | | Can be tested with: $ ./configure --cc='cc -m32' --disable-optimizations --enable-pic
* Merge commit '6655c933a887a2d20707fff657b614aa1d86a25b'Michael Niedermayer2014-03-22
|\ | | | | | | | | | | | | * commit '6655c933a887a2d20707fff657b614aa1d86a25b': x86: dsputil: Move fpel declarations to a separate header Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dsputil: Move fpel declarations to a separate headerDiego Biurrun2014-03-22
| |
* | Automatically change MANGLE() into named inline asm operands when direct ↵Matt Oliver2014-03-18
| | | | | | | | | | | | | | | | symbol reference in inline asm are not supported. This is part of the patch-set for intel C inline asm on windows support Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '1399931d07f0f37ef4526eb8d39d33c64e09618a'Michael Niedermayer2013-05-14
|\| | | | | | | | | | | | | | | | | | | * commit '1399931d07f0f37ef4526eb8d39d33c64e09618a': x86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.h Conflicts: libavcodec/x86/dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.hDiego Biurrun2013-05-12
| | | | | | | | The header is not (anymore) MMX-specific.
* | Merge commit '71469f3b636fbe06b6aca5933f9fdebddd8d5f57'Michael Niedermayer2013-05-09
|\| | | | | | | | | | | | | | | | | | | * commit '71469f3b636fbe06b6aca5933f9fdebddd8d5f57': x86: dsputil: Move constant declarations into separate header Conflicts: libavcodec/x86/dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dsputil: Move constant declarations into separate headerDiego Biurrun2013-05-08
| |
* | Merge commit 'bf7c3c6b157f7938578f964b62cffd5e504940be'Michael Niedermayer2013-05-03
|\| | | | | | | | | | | | | | | | | | | * commit 'bf7c3c6b157f7938578f964b62cffd5e504940be': x86: dsputil: Move cavs and vc1-specific functions where they belong Conflicts: libavcodec/x86/dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dsputil: Move cavs and vc1-specific functions where they belongDiego Biurrun2013-05-02
| |
* | Merge commit '3b2d0ec473b036bdd0a5bc0d896fd5292915f44d'Michael Niedermayer2013-03-27
|\| | | | | | | | | | | | | | | | | | | | | * commit '3b2d0ec473b036bdd0a5bc0d896fd5292915f44d': configure: Remove the mpegvideo dependency from svq1 x86: vc1dsp: Fix indentation Conflicts: configure Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: vc1dsp: Fix indentationMartin Storsjö2013-03-26
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit 'a8b6015823e628047a45916404c00044c5e80415'Michael Niedermayer2013-03-13
|\| | | | | | | | | | | | | | | | | | | | | | | * commit 'a8b6015823e628047a45916404c00044c5e80415': dsputil: convert remaining functions to use ptrdiff_t strides Conflicts: libavcodec/dsputil.h libavcodec/dsputil_template.c libavcodec/h264qpel_template.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dsputil: convert remaining functions to use ptrdiff_t stridesLuca Barbato2013-03-12
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '845cfc92f908791714b8c4c8a49c91b8c64b685e'Michael Niedermayer2013-02-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '845cfc92f908791714b8c4c8a49c91b8c64b685e': x86: dsputil: Drop aliasing of ff_put_pixels8_mmx to ff_put_pixels8_mmxext Conflicts: libavcodec/x86/dsputil_mmx.c Note, the commit message is wrong, there are no mmxext instructions as claimed in the function. The change should do no harm though Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dsputil: Drop aliasing of ff_put_pixels8_mmx to ff_put_pixels8_mmxextDiego Biurrun2013-02-26
| | | | | | | | | | | | The external assembly function uses mmxext instructions and should not be masqueraded as an mmx-only function. Instead, use the mmx-only inline assembly function.
* | Merge commit '096cc11ec102701a18951b4f0437d609081ca1dd'Michael Niedermayer2013-02-27
|\| | | | | | | | | | | | | * commit '096cc11ec102701a18951b4f0437d609081ca1dd': x86: vc1dsp: Move ff_avg_vc1_mspel_mc00_mmxext out of dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: vc1dsp: Move ff_avg_vc1_mspel_mc00_mmxext out of dsputil_mmx.cDiego Biurrun2013-02-26
| |
* | Merge commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f'Michael Niedermayer2013-02-26
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'c242bbd8b6939507a1a6fb64101b0553d92d303f': Remove unnecessary dsputil.h #includes Conflicts: libavcodec/ffv1.c libavcodec/h261dec.c libavcodec/h261enc.c libavcodec/h264pred.c libavcodec/lpc.h libavcodec/mjpegdec.c libavcodec/rectangle.h libavcodec/x86/idct_sse2_xvid.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove unnecessary dsputil.h #includesDiego Biurrun2013-02-26
| |
* | Merge commit '71155d7b4157fee44c0d3d0fc1b660ebfb9ccf46'Michael Niedermayer2013-01-27
|\| | | | | | | | | | | | | | | | | | | * commit '71155d7b4157fee44c0d3d0fc1b660ebfb9ccf46': dsputil: x86: Convert mpeg4 qpel and dsputil avg to yasm Conflicts: libavcodec/x86/dsputil_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dsputil: x86: Convert mpeg4 qpel and dsputil avg to yasmDaniel Kang2013-01-27
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f'Michael Niedermayer2013-01-23
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f': Drop DCTELEM typedef Conflicts: libavcodec/alpha/dsputil_alpha.h libavcodec/alpha/motion_est_alpha.c libavcodec/arm/dsputil_init_armv6.c libavcodec/bfin/dsputil_bfin.h libavcodec/bfin/pixels_bfin.S libavcodec/cavs.c libavcodec/cavsdec.c libavcodec/dct-test.c libavcodec/dnxhdenc.c libavcodec/dsputil.c libavcodec/dsputil.h libavcodec/dsputil_template.c libavcodec/eamad.c libavcodec/h264_cavlc.c libavcodec/h264idct_template.c libavcodec/mpeg12.c libavcodec/mpegvideo.c libavcodec/mpegvideo.h libavcodec/mpegvideo_enc.c libavcodec/ppc/dsputil_altivec.c libavcodec/proresdsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Drop DCTELEM typedefDiego Biurrun2013-01-22
| | | | | | | | | | | | It does not help as an abstraction and adds dsputil dependencies. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | Merge commit 'fa8fcab1e0d31074c0644c4ac5194474c6c26415'Michael Niedermayer2012-11-01
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'fa8fcab1e0d31074c0644c4ac5194474c6c26415': x86: h264_chromamc_10bit: drop pointless PAVG %define x86: mmx2 ---> mmxext in function names swscale: do not forget to swap data in formats with different endianness Conflicts: libavcodec/x86/dsputil_mmx.c libavfilter/x86/gradfun.c libswscale/input.c libswscale/utils.c libswscale/x86/swscale.c tests/ref/lavfi/pixfmts_scale Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: mmx2 ---> mmxext in function namesDiego Biurrun2012-10-31
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-10-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: x86: vc1: call ff_vc1dsp_init_x86() under if (ARCH_X86) x86: cavs: call ff_cavsdsp_init_x86() under if (ARCH_X86) x86: call most of the x86 dsp init functions under if (ARCH_X86) doc: support the new website layout doc: remove a warning from filters.texi doc: initial nut documentation segment: drop global headers setting lavu: fix typo in Makefile Conflicts: doc/Makefile doc/filters.texi doc/t2h.init libavcodec/fmtconvert.c libavcodec/proresdsp.c libavcodec/x86/Makefile libavcodec/x86/vc1dsp_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: vc1: call ff_vc1dsp_init_x86() under if (ARCH_X86)Janne Grunau2012-10-08
| |
* | Merge commit 'ec36aa69448f20a78d8c4588265022e0b2272ab5'Michael Niedermayer2012-08-31
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'ec36aa69448f20a78d8c4588265022e0b2272ab5': x86: Fix linking with some or all of yasm, mmx, optimizations disabled configure: Add more fine-grained SSE CPU capabilities flags avfilter: x86: Use more precise compile template names x86: cosmetics: Comment some #endifs for better readability g723_1: add comfort noise generation utvideoenc: Switch to dsputils' median prediction utvideoenc: Avoid writing into the input picture avtools: remove the distinction between func_arg and func2_arg. avconv: make the -passlogfile option per-stream. avconv: make the -pass option per-stream. cmdutils: make -codecs print lossy/lossless flags. lavc: add lossy/lossless codec properties. Conflicts: Changelog cmdutils.c configure doc/APIchanges ffmpeg.h ffmpeg_opt.c ffprobe.c libavcodec/codec_desc.c libavcodec/g723_1.c libavcodec/utvideoenc.c libavcodec/version.h libavcodec/x86/mpegaudiodec.c libavcodec/x86/rv40dsp_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: cosmetics: Comment some #endifs for better readabilityDiego Biurrun2012-08-30
| |
* | vc1dsp_mmx: remove libavutil/internal.h includeMichael Niedermayer2012-08-16
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Fix even more missing includes after the common.h removal build: Factor out rangecoder dependencies to CONFIG_RANGECODER build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE x86: avcodec: Consistently name all init files Add more missing includes after removing the implicit common.h Add some more missing includes after removing the implicit common.h Don't include common.h from avutil.h rtmp: Automatically compute the hash for SWFVerification Conflicts: configure doc/APIchanges doc/examples/decoding_encoding.c libavcodec/Makefile libavcodec/assdec.c libavcodec/audio_frame_queue.c libavcodec/avpacket.c libavcodec/dv_profile.c libavcodec/dwt.c libavcodec/libtheoraenc.c libavcodec/rawdec.c libavcodec/rv40dsp.c libavcodec/tiff.c libavcodec/tiffenc.c libavcodec/v210dec.h libavcodec/vc1dsp.c libavcodec/x86/Makefile libavfilter/asrc_anullsrc.c libavfilter/avfilter.c libavfilter/buffer.c libavfilter/formats.c libavfilter/vf_ass.c libavfilter/vf_drawtext.c libavfilter/vf_fade.c libavfilter/vf_select.c libavfilter/video.c libavfilter/vsrc_testsrc.c libavformat/version.h libavutil/audioconvert.c libavutil/error.h libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Don't include common.h from avutil.hMartin Storsjö2012-08-15
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-09
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mpegvideo: reduce excessive inlining of mpeg_motion() mpegvideo: convert mpegvideo_common.h to a .c file build: factor out mpegvideo.o dependencies to CONFIG_MPEGVIDEO Move MASK_ABS macro to libavcodec/mathops.h x86: move MANGLE() and related macros to libavutil/x86/asm.h x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h aacdec: Don't fall back to the old output configuration when no old configuration is present. rtmp: Add message tracking rtsp: Support mpegts in raw udp packets rtsp: Support receiving plain data over UDP without any RTP encapsulation rtpdec: Remove an unused include rtpenc: Remove an av_abort() that depends on user-supplied data vsrc_movie: discourage its use with avconv. avconv: allow no input files. avconv: prevent invalid reads in transcode_init() avconv: rename OutputStream.is_past_recording_time to finished. Conflicts: configure doc/filters.texi ffmpeg.c ffmpeg.h libavcodec/Makefile libavcodec/aacdec.c libavcodec/mpegvideo.c libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.hMans Rullgard2012-08-09
| | | | | | | | | | | | | | This puts x86-specific things in the x86/ subdirectory where they belong. Signed-off-by: Mans Rullgard <mans@mansr.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-04
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: lavr: fix handling of custom mix matrices fate: force pix_fmt in lagarith-rgb32 test fate: add tests for lagarith lossless video codec. ARMv6: vp8: fix stack allocation with Apple's assembler ARM: vp56: allow inline asm to build with clang fft: 3dnow: fix register name typo in DECL_IMDCT macro x86: dct32: port to cpuflags x86: build: replace mmx2 by mmxext Revert "wmapro: prevent division by zero when sample rate is unspecified" wmapro: prevent division by zero when sample rate is unspecified lagarith: fix color plane inversion for YUY2 output. lagarith: pad RGB buffer by 1 byte. dsputil: make add_hfyu_left_prediction_sse4() support unaligned src. Conflicts: doc/APIchanges libavcodec/lagarith.c libavfilter/x86/gradfun.c libavutil/cpu.h libavutil/version.h libswscale/utils.c libswscale/version.h libswscale/x86/yuv2rgb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: build: replace mmx2 by mmxextDiego Biurrun2012-08-03
| | | | | | | | | | | | | | Refactoring mmx2/mmxext YASM code with cpuflags will force renames. So switching to a consistent naming scheme beforehand is sensible. The name "mmxext" is more official and widespread and also the name of the CPU flag, as reported e.g. by the Linux kernel.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-06-30
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: dsputilenc_mmx: split assignment of ff_sse16_sse2 to SSE2 section. dnxhdenc: add space between function argument type and comment. x86: fmtconvert: add special asm for float_to_int16_interleave_misc_* attributes: Add a definition of av_always_inline for MSVC cmdutils: Pass the actual chosen encoder to filter_codec_opts os_support: Add fallback definitions for stat flags os_support: Rename the poll fallback function to ff_poll network: Check for struct pollfd os_support: Don't compare a negative number against socket descriptors os_support: Include all the necessary headers for the win32 open function x86: vc1: fix and enable optimised loop filter Conflicts: cmdutils.c cmdutils.h ffmpeg.c ffplay.c libavformat/os_support.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: vc1: fix and enable optimised loop filterMans Rullgard2012-06-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem is that the ssse3 psign instruction does the wrong thing here. Commit ea60dfe incorrectly removed a macro emulating this instruction for pre-ssse3 code. However, the emulation is incorrect, and the code relies on the behaviour of the macro. Specifically, the psign sets destination elements to zero where the corresponding source element is zero, whereas the emulation only negates destination elements where the source is negative. Furthermore, the PSIGNW_MMX macro in x86util.asm is totally bogus, which is why the original VC-1 code had an additional right shift when using it. Since the psign instruction cannot be used here, skip all the macro hell and use the working instruction sequence directly. None of this was noticed due a stray return statement in ff_vc1dsp_init_mmx() which meant that only the mmx version of the loop filter was ever used (before being removed in ea60dfe). Signed-off-by: Mans Rullgard <mans@mansr.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-06-25
|\| | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: wtv: Check the return value from gmtime x86: fft: convert sse inline asm to yasm x86: place some inline asm under #if HAVE_INLINE_ASM Conflicts: libavcodec/x86/fft_sse.c libavformat/wtv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: place some inline asm under #if HAVE_INLINE_ASMRonald S. Bultje2012-06-25
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-05-13
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: lavfi: autoinsert resample filter when necessary. lavfi: add lavr-based audio resampling filter. x86: vc1: drop MMX loop filter implementation, which uses MMX2 instructions. Conflicts: configure doc/filters.texi libavcodec/x86/vc1dsp_mmx.c libavfilter/Makefile libavfilter/allfilters.c libavfilter/avfiltergraph.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: vc1: drop MMX loop filter implementation, which uses MMX2 instructions.Michael Kostylev2012-05-12
| |
| * dsputil: move VC1-specific stuff into VC1DSPContext.Ronald S. Bultje2011-02-17
| |
* | Fix linking without yasm.Carl Eugen Hoyos2012-03-24
| |
* | VC1: restore optimizations broken in 9a1ced32.Reimar Döffinger2012-03-23
| | | | | | | | | | | | | | | | They were moved into code under HAVE_YASM and most of them even into completely disabled code with no reason given for that in the commit message. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
* | dsputil: move VC1-specific stuff into VC1DSPContext.Ronald S. Bultje2011-02-18
|/ | | | (cherry picked from commit 12802ec0601c3bd7b9c7a2503518e28fd5e7d744)