Christophe Gisquet
f1793fe9cd
x86: hevc_mc: specify coefficients registers
...
By default, macro EPEL_FILTER loads the coefficients inconditionally
into m14/m15. This forces an unneeded higher register count.
Reduce that count by making them parameters of EPEL_FILTER.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Carl Eugen Hoyos
ef2713747f
Fix compilation of libavcodec/x86/hevc_deblock.asm with nasm.
...
Suggested-by: Reimar
11 years ago
James Almer
be1fbc02b8
x86/hevc_deblock: use movhps instead of shuffling values
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
8aac77fede
x86/hevc_deblock: fix label names
...
Also remove some unnecessary jmps
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
521eaea63a
x86/hevc_deblock: fix usage of ABS1
...
The second argument is a temp register for non-SSSE3 cases
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
45110d2290
x86/hevc_deblock: merge movs with other instructions
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
plepere
ef7c4cd001
avcodec/x86/hevc: updated to use x86util macros
...
Reviewed-by: James Almer <jamrial@gmail.com>
Reviewed-by: Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
plepere
de7b89fd43
avcodec/x86/hevc: added DBF assembly functions
...
Reviewed-by: James Almer <jamrial@gmail.com>
Reviewed-by: Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
bebce653e5
avcodec/x86/dsputil_mmx: Fix build with clang-usan
...
Found-by: Katerina Barone-Adesi
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
d1310c591e
x86: sbrdsp: implement SSE qmf_deint_neg
...
From 133 (unrolled av_intfloat32 C) to 59 cycles on Arrandale/Win64.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Hendrik Leppkes
87f2d8079a
hevcdsp: correctly indicate that hevc_put_hevc_bi_epel_h uses 9 GPRs
...
Fixes FATE on Windows.
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
8e07800001
hevcdsp: include stddef.h for ptrdiff_t definition
...
Including stdint.h was enough for systems like Mingw, but apparently not for Linux.
This should fix make checkheaders failures on every platform
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
fa23190a7a
hevcdsp: add missing header include
...
Fixes make checkheaders
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
341cacb9ac
avcodec/x86/hevcdsp_init: fix build failure with --disable-mmx
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
plepere
63832e01c3
hvcodec/x86/hevcdsp: make macros more modular to support functions that are not sse4
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Matt Oliver
1898c2f49d
inline asm: fix arrays as named constraints.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
fc7d0d8201
avcodec/x86/hevcdsp_init: fix SSE4 checks
...
Found-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
7be230b5fa
avcodec/x86/Makefile: remove duplicate line
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
3b3db02f2e
avcodec/x86/hevcdsp_init: fix build on 32bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
plepere
7a2491c436
HEVC : added assembly MC functions
...
pretty print x86
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Matt Oliver
ac9869ffb0
x86/mpegaudiodsp.c: msvc compilation error without sse/avx_external
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
ebf2c2c3a8
avcodec/lossless_videodsp: fix incompatible pointer type warning
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Matt Oliver
3c3e02b8d1
x86/cavdsp: prevent named constraints appearing twice.
11 years ago
James Almer
5ac10d40fb
x86/mpegaudiodsp: define apply_window_mp3 as SSE
...
None of the handwritten asm in this function seems to be SSE2
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Hendrik Leppkes
5809c2a99d
vc1dsp: fix build without inline asm
...
Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Clément Bœsch
62d31307c1
avcodec/x86/vp9lpf: add a comment above a bunch of SWAP.
11 years ago
Clément Bœsch
f0d368d758
avcodec/x86/vp9lpf: merge a few movs with other instructions.
11 years ago
Christophe Gisquet
319235c67c
vc1dsp: introduce cases for 8x8 and 16x16
...
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>
11 years ago
Clément Bœsch
010732b73a
vp9/x86: simplify FILTER_INIT.
...
In the 2 FILTER_INIT usages, the source is already preloaded so that
extra complexity taken from FILTER_UPDATE is not necessary.
Also add forgotten "mask" argument in FILTER_{INIT,UPDATE} comments.
11 years ago
Clément Bœsch
b8d002dc95
vp9/x86: clarify mixed splatb.
11 years ago
Carl Eugen Hoyos
b38910c979
Fix compilation with !HAVE_6REGS.
...
Can be tested with:
$ ./configure --cc='cc -m32' --disable-optimizations --enable-pic
11 years ago
Carl Eugen Hoyos
72c93abaad
Use MANGLE in cavsdsp.c to save two registers using gcc.
...
Fixes compilation with !HAVE_6REGS.
11 years ago
James Almer
197fe392db
x86/dsputil: use HADDD where applicable
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
76ed71a72b
x86: move horizontal add macros to x86util
...
Also port relevant AVX2/XOP optimizations from x264 with permission
to relicense to LGPL from the corresponding authors
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
46d5625f44
avcodec/x86/idct_sse2_xvid: fix non C99 inline function
...
Found-by: Matt Oliver <protogonoi@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
0f524b6c69
x86/synth_filter: remove the fma3 version ifdefs
...
This fixes compilation failures with --disable-fma3
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Timothy Gu
71c32ed533
DNxHD: convert inline asm to yasm
11 years ago
Timothy Gu
676856204b
DNxHD: make get_pixel_8x4_sym accept ptrdiff_t as stride
11 years ago
Matt Oliver
d1e6e5c887
avcodec/x86: Exclude broken get_cabac under icl.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Matt Oliver
158a80cc0b
Remove leal op to fix icl inline asm.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Hendrik Leppkes
fc7e02f0ff
dcadsp: fix SSE code to not use SSE2 instructions.
...
movq from SSE register to memory is an SSE2 instruction.
Instead, use SSE movlps, which does the same thing.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
a1ac12bddd
x86/dcadsp: add ff_dca_lfe_fir0_fma3
...
~10% faster than the SSE version.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
7d2116dd09
x86/synth_filter: compile avx and fma3 functions unconditionally
...
Fixes compilation failures with "--disable-{avx,fma3} --disable-optimizations"
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
490d53e335
avcodec/x86/dcadsp_init: fix compilation failure without FMA3
...
alternatively the call could be put under #if or the #if
over the function removed
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
dfd865e51b
x86/synth_filter: remove the main loop when it's not needed
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
57b5b84e20
x86: dsputil: Move ff_apply_window_int16_* bits to ac3dsp, where they belong
11 years ago
Diego Biurrun
c2c5be5749
x86: h264_qpel: Simplify an #if conditional
...
The extra conditions are covered by previous #ifs and conditional compilation.
11 years ago
Diego Biurrun
01c5779f56
x86: Drop some unnecessary YASM ifdefs
...
Dead code elimination is enough to avoid undefined references in these cases.
11 years ago
Diego Biurrun
b42f49e42f
x86: dsputil: Eliminate some unnecessary dsputil_x86.h #includes
11 years ago
Diego Biurrun
3dc6272bed
Remove a number of unnecessary dsputil.h #includes
11 years ago