summaryrefslogtreecommitdiff
path: root/libavfilter/x86
Commit message (Collapse)AuthorAge
* x86inc: Drop SECTION_TEXT macroHenrik Gramner2015-08-11
| | | | | | | The .text section is already 16-byte aligned by default on all supported platforms so `SECTION_TEXT` isn't any different from `SECTION .text`. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* x86: check for AV_CPU_FLAG_AVXSLOW where usefulJames Almer2015-05-31
| | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vf_interlace: get rid of useless loadsKieran Kunhya2014-11-27
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vf_interlace: x86: improve asm performanceMichael Niedermayer2014-11-25
| | | | 4775 decicycles -> 3688 decicycles
* vf_interlace: Add SIMD for lowpass filterKieran Kunhya2014-11-15
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* x86: Drop some unnecessary YASM ifdefsDiego Biurrun2014-04-04
| | | | Dead code elimination is enough to avoid undefined references in these cases.
* vf_yadif: Relicense from GPL to LGPLRobert Krüger2014-01-14
| | | | All copyright holders have agreed to the relicensing.
* gradfun: x86: Factor out common code for some gradfun_filter_line() variantsDiego Biurrun2013-10-31
|
* avfilter: x86: K&R formatting cosmeticsDiego Biurrun2013-10-31
|
* avfilter: x86: Port gradfun filter optimizations to yasmDaniel Kang2013-10-23
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* avfilter: Fix typo in Loren's email addressDiego Biurrun2013-10-23
|
* Consistently use "cpu_flags" as variable/parameter name for CPU flagsDiego Biurrun2013-07-18
|
* yadif: restore speed of the C filtering codeJames Darnley2013-05-14
| | | | | | | | | | | | | | Always use the special filter for the first and last 3 columns (only). Changes made in 64ed397 slowed the filter to just under 3/4 of what it was. This commit restores the speed while maintaining identical output. For reference, on my Athlon64: 1733222 decicycles in old 2358563 decicycles in new 1727558 decicycles in this Signed-off-by: Anton Khirnov <anton@khirnov.net>
* x86: vf_yadif: Remove stray dsputil_mmx #includeDiego Biurrun2013-05-08
|
* avfilter: Add av_cold attributes to init/uninit functionsDiego Biurrun2013-05-04
|
* x86: Move some conditional code around to avoid unused variable warningsDiego Biurrun2013-04-22
|
* lavfi/gradfun: remove rounding to match C and SSE code.Clément Bœsch2013-03-28
| | | | | | There is no noticable benefit for such precision. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavfi/gradfun: fix dithering in MMX code.Clément Bœsch2013-03-28
| | | | | | Current dithering only uses the first 4 instead of the whole 8 random values. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* lavfi/gradfun: fix rounding in MMX code.Clément Bœsch2013-03-28
| | | | | | | | | | | | | | | Current code divides before increasing precision. Also reduce upper bound for strength from 255 to 64. This will prevent an overflow in the SSSE3 and MMX filter_line code: delta is expressed as an u16 being shifted by 2 to the left. If it overflows, having a strength not above 64 will make sure that m is set to 0 (making the m*m*delta >> 14 expression void). A value above 64 should not make any sense unless gradfun is used as a blur filter. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* hqdn3d: Fix out of array read in LOWPASSLoren Merritt2013-03-13
| | | | | CC:libav-stable@libav.org Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vf_yadif: fix out-of line readsAnton Khirnov2013-02-15
| | | | Some changes in the border pixels, visually indistinguishable.
* vf_yadif: silence a warning.Anton Khirnov2013-02-06
| | | | | | | clang says: libavfilter/vf_yadif.c:192:28: warning: incompatible pointer types assigning to 'void (*)(uint8_t *, uint8_t *, uint8_t *, uint8_t *, int, int, int, int, int)' from 'void (uint16_t *, uint16_t *, uint16_t *, uint16_t *, int, int, int, int, int)'
* avfilter: x86: consistent filenames for filter optimizationsDiego Biurrun2013-02-04
|
* vf_hqdn3d: x86: Add proper arch optimization initializationDiego Biurrun2013-02-01
|
* yadif: x86: fix build for compilers without aligned stackDaniel Kang2013-01-14
| | | | | | | Manually load registers to avoid using 8 registers on x86_32 with compilers that do not align the stack (e.g. MSVC). Signed-off-by: Diego Biurrun <diego@biurrun.de>
* yadif: Port inline assembly to yasmDaniel Kang2013-01-09
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* x86: af_volume: add SSE2/SSSE3/AVX-optimized s32 volume scalingJustin Ruggles2012-12-05
|
* x86: af_volume: add SSE2-optimized s16 volume scalingJustin Ruggles2012-12-05
|
* x86: mmx2 ---> mmxext in function namesDiego Biurrun2012-10-31
|
* x86: yasm: Use complete source path for macro helper %includesDiego Biurrun2012-10-31
| | | | | This is more consistent with the way we handle C #includes and it simplifies the build system.
* x86: include x86inc.asm in x86util.asmDiego Biurrun2012-10-31
| | | | This is necessary to allow refactoring some x86util macros with cpuflags.
* avfilter: call x86 init functions under if (ARCH_X86), not if (HAVE_MMX)Diego Biurrun2012-10-12
|
* x86: Split inline and external assembly #ifdefsDiego Biurrun2012-08-31
|
* avfilter: x86: Use more precise compile template namesDiego Biurrun2012-08-30
|
* vf_hqdn3d: x86 asmLoren Merritt2012-08-26
| | | | | 13% faster on penryn, 16% on sandybridge, 15% on bulldozer Not simd; a compiler should have generated this, but gcc didn't.
* Don't include common.h from avutil.hMartin Storsjö2012-08-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: yadif: fix asm with sunccMans Rullgard2012-08-13
| | | | | | | | | | | | | | | | Under some circumstances, suncc will use a single register for the address of all memory operands, inserting lea instructions loading the correct address prior to each memory operand being used in the code. In the yadif code, the branch in the asm block bypasses such an lea instruction, causing an incorrect address to be used in the following load. This patch replaces the tmpX arrays with a single array and uses a register operand to hold its address. Although this prevents using offsets from the stack pointer to access these locations, the code still builds as 32-bit PIC even with old compilers. Signed-off-by: Mans Rullgard <mans@mansr.com>
* 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>
* 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.
* x86: yadif: Mark mmxext optimizations as suchDiego Biurrun2012-07-31
| | | | | The yadif mmx optimizations contain the pmaxsw and pmaxub mmxext instructions, causing sigills on CPUs that do not support mmxext.
* lavfi: place x86 inline assembly under HAVE_INLINE_ASM.Ronald S. Bultje2012-07-22
| | | | | This allows compiling this code using compilers that do not understand gcc-style inline assembly.
* x86: lavfi: fix gradfun/yadif build with mmx/sse disabledMans Rullgard2012-07-03
| | | | | | | These functions are defined conditionally so any uses need to have preprocessor guards. Signed-off-by: Mans Rullgard <mans@mansr.com>
* vf_yadif: move x86 init code to x86/yadif.cMans Rullgard2012-07-02
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* vf_gradfun: move x86 init code to x86/gradfun.cMans Rullgard2012-07-02
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* yadif: specify array size outside DECLARE_ALIGNEDJanne Grunau2012-02-09
|
* cosmetics: Delete empty lines at end of file.Diego Biurrun2012-02-09
|
* vf_gradfun: relicense x86 asm to LGPLLoren Merritt2011-07-04
| | | | | Actually I gave permission for LGPL long ago, but the original import failed to update the license header.
* Change yadif to not use out of picture lines.Michael Niedermayer2011-04-03
| | | | | | | Fixes issue2272. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* consolidate .gitignore patters into a single fileJanne Grunau2011-01-18
| | | | Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>