Mans Rullgard
da4c7cce21
x86: fix build with gcc 4.7
...
The upcoming gcc 4.7 has more advanced constant propagation
resulting some inline asm operands becoming constants and thus
emitted as literals, sometimes in contexts where this results
in invalid instructions.
This patch changes the constraints of the relevant operands
to "rm" thus forcing a valid type. While obviously suboptimal,
this is what older gcc versions already did, and there is no
change to the code generated with these.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Daniel Kang
406fbd24dc
H.264: Add optimizations to predict x86 assembly.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Joseph Artsimovich
5ab21439fd
dnxhd: 10-bit support
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
a617c6aaa3
dsputil: update per-arch init funcs for non-h264 high bit depth
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
874f1a901d
dsputil: template get_pixels() for different bit depths
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
0a72533e98
jfdctint: add 10-bit version
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
e7a972e113
simple_idct: add 10-bit version
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Diego Biurrun
65083b4911
dsputil: remove disabled code
14 years ago
Martin Storsjö
8f62ef0f95
x86: Use LOCAL_ALIGNED in mpegvideo_mmx_template
...
Signed-off-by: Martin Storsjö <martin@martin.st>
14 years ago
Diego Biurrun
e0ae2174db
simple_idct: remove disabled code
14 years ago
Daniel Kang
ac4a85f476
H.264: Add more x86 assembly for 10-bit H.264 predict functions
...
Mainly ported from 8-bit H.264 predict.
Some code ported from x264. LGPL ok by author.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Jason Garrett-Glaser
b5bbc84fe2
H.264: add filter_mb_fast support for >8-bit decoding
...
Much faster high bit depth deblocking.
14 years ago
Mans Rullgard
710b8df949
dsputil: remove ff_emulated_edge_mc macro used in one place
...
This macro can cause problems in conjunction with the bitdepth
template expansion. It was presumably added to keep source
compatibility when high bitdepth support was added. However,
emulated_edge_mc is a dsputil pointer and should not be called
directly, so there is little reason to keep such a macro.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Daniel Kang
c0483d0c7a
H.264: Add x86 assembly for 10-bit H.264 predict functions
...
Mainly ported from 8-bit H.264 predict.
Some code ported from x264. LGPL ok by author.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Daniel Kang
3c7c16fde3
YASM: Shut up unused variable compiler warning with --disable-yasm.
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Daniel Kang
567a32b5b2
x86_32: Fix build on x86_32 with --disable-yasm.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Daniel Kang
58f7aad051
Fix build with --disable-yasm.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Michael Niedermayer
145293b335
h264_qpel_mmx: add another forgotten have_yasm
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Michael Niedermayer
889639969b
dsputil_mmx: try to fix compilation without yasm.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Daniel Kang
9bfa5363da
H.264: Add x86 assembly for 10-bit H.264 qpel functions.
...
Mainly ported from 8-bit H.264 qpel.
Some code ported from x264. LGPL ok by author.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Justin Ruggles
f99a5ef92e
ac3dsp: add x86-optimized versions of ac3dsp.extract_exponents().
14 years ago
Justin Ruggles
6054cd25b4
ac3enc: add int32_t array clipping function to DSPUtil, including x86 versions.
14 years ago
Carl Eugen Hoyos
4d08dfefa9
Remove gcc 2.95.3 remnants.
14 years ago
Diego Biurrun
d2ee495fb2
configure: Drop check for availability of ten assembler operands.
...
This was done to support gcc 2.95, which is an old legacy compiler
that fails to compile the current codebase anyway.
14 years ago
Reimar Döffinger
5c13b5bb39
Add operand size to add instructions.
...
In these cases it can't be guessed from the operands (at least
not necessarily), and it seems some clang versions refuse to
compiler it.
Fixes ticket #303 .
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
14 years ago
Diego Biurrun
adbfc605f6
doxygen: Consistently use '@' instead of '\' for Doxygen markup.
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Carl Eugen Hoyos
81ef892ca8
Use HAVE_TEN_OPERANDS for new decode_significance* functions.
14 years ago
Reimar Döffinger
5f654897e3
A cmp instruction with two constants is invalid, thus "g" constraint
...
is not correct but must be "rm" instead.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Daniel Kang
84e70ef004
h264: Add x86 assembly for 10-bit weight/biweight H.264 functions.
...
Mainly ported from 8-bit H.264 weight/biweight.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Mans Rullgard
c5ee740745
x86: cabac: fix register constraints for 32-bit mode
...
Some operands need to be accessed in byte mode, which restricts the
available registers in 32-bit mode. Using the 'q' constraint selects
a suitable register.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
2143d69bdd
cabac: move x86 asm to libavcodec/x86/cabac.h
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
d075e7d540
x86: h264: cast pointers to intptr_t rather than int
...
Only the low-order bits are used here so the type is not important,
but this avoids a compiler warning.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
3a4edb76d6
x86: h264: remove hardcoded edi in decode_significance_8x8_x86()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
b92c1a6d26
x86: h264: remove hardcoded esi in decode_significance[_8x8]_x86()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
3fc4e36c78
x86: h264: remove hardcoded edx in decode_significance[_8x8]_x86()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
e4b5a204aa
x86: h264: remove hardcoded eax in decode_significance[_8x8]_x86()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
018c33838e
x86: cabac: remove hardcoded ebx in inline asm
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
6b712acc0e
x86: cabac: remove hardcoded struct offsets from inline asm
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Ronald S. Bultje
ed63f527f2
Fix build if yasm is not available.
14 years ago
Daniel Kang
f188a1e0ca
H.264: Add x86 assembly for 10-bit MC Chroma H.264 functions.
...
Mainly ported from 8-bit H.264 MC Chroma.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Carl Eugen Hoyos
5fb67d8039
Fix compilation with old yasm.
14 years ago
Jason Garrett-Glaser
c90b94424c
4:4:4 H.264 decoding support
...
Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
14 years ago
Jason Garrett-Glaser
504811baea
Roll back 4:4:4 H.264 for now
...
Needs some ARM/PPC asm modifications.
14 years ago
Jason Garrett-Glaser
c9c493872c
4:4:4 H.264 decoding support
...
Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
14 years ago
Oskar Arvidsson
6c031a3338
h264: Fix 10-bit H.264 x86 chroma v loopfilter asm.
...
The tc variable was not splatted correctly.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Daniel Kang
4de83b7b6d
H264: x86 predict init cosmetics.
...
Change indentation and whitespace; also move HAVE_YASM blocks.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Daniel Kang
a8d44f9dd5
Add x86 assembly for some 10-bit H.264 intra predict functions.
...
Parts are inspired from the 8-bit H.264 predict code in Libav.
Other parts ported from x264 with relicensing permission from author.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Loren Merritt
53be7b23e9
Cosmetic changes to h264_idct_10bit.asm.
...
Removes redundant dword tags and whitespace changes.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Loren Merritt
994c3550ff
2x faster h264_idct_add8_10.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Ronald S. Bultje
e6635a9a19
h264: remove CONFIG_GPL from x86 intra prediction code.
...
The authors permitted relicensing to LGPL a long time ago (Holger,
Loren and Jason).
14 years ago