Statistics
| Branch: | Revision:

ffmpeg / libavcodec / x86 @ b9c7f66e

# Date Author Comment
b9c7f66e 01/20/2011 01:34 AM Ronald S. Bultje

Fix horizontal/horizontal_up 8x8l intra prediction x86/simd functions.
The original functions did not work correctly for edge pixels, e.g.
when CODEC_FLAG_EMU_EDGE is set, leading to corrupt output in e.g. VLC.
Based on a patch by Daniel Kang <daniel d kang gmail com>....

ef4a6514 01/18/2011 08:48 PM Mans Rullgard

Replace ASMALIGN with .p2align

This macro has unconditionally used .p2align for a long time and
serves no useful purpose.

ac3c9d01 01/18/2011 08:48 PM Mans Rullgard

x86: remove VLA in ac3_downmix_sse

2c3589bf 01/18/2011 08:32 PM Janne Grunau

consolidate .gitignore patters into a single file

Signed-off-by: Janne Grunau <>

348b8218 01/17/2011 02:50 PM Janne Grunau

convert svn:ignore properties to .gitignore files

Signed-off-by: Janne Grunau <>

1b3e43e4 01/15/2011 10:00 PM Ronald S. Bultje

Fix overflow in pred16x16_plane x86 simd code. Fixes issue 2547.

Originally committed as revision 26381 to svn://svn.ffmpeg.org/ffmpeg/trunk

ec3233a8 01/14/2011 11:26 PM Ronald S. Bultje

Fix ff_pw_3 alignment.

Originally committed as revision 26344 to svn://svn.ffmpeg.org/ffmpeg/trunk

19fb234e 01/14/2011 09:34 PM Jason Garrett-Glaser

H.264: split luma dc idct out and implement MMX/SSE2 versions
About 2.5x the speed.

NOTE: the way that the asm code handles large qmuls is a bit suboptimal.
If x264-style dequant was used (separate shift and qmul values), it might
be possible to get some extra speed....

004357a1 01/03/2011 11:30 AM Daniel Kang

Fix compilation on x86-32 with --disable-optimizations,
fixes issue 2127.

Patch by Daniel Kang, daniel.d.kang at gmail

Originally committed as revision 26204 to svn://svn.ffmpeg.org/ffmpeg/trunk

0790caba 12/31/2010 01:29 AM Daniel Kang

Fix invalid reads in valgrind fate, patch by Daniel Kang <daniel dot d dot
kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26177 to svn://svn.ffmpeg.org/ffmpeg/trunk

536e9b2f 12/29/2010 11:48 PM Daniel Kang

Port pred8x8l_down_left_mmxext (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang
at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26162 to svn://svn.ffmpeg.org/ffmpeg/trunk

720ea2d5 12/29/2010 09:55 PM Daniel Kang

Port pred4x4_down_right_mmxext (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang
at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26159 to svn://svn.ffmpeg.org/ffmpeg/trunk

d0aebe23 12/29/2010 09:52 PM Daniel Kang

Port pred4x4_vertical_right_mmxext (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang
at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26158 to svn://svn.ffmpeg.org/ffmpeg/trunk

76497232 12/29/2010 09:49 PM Daniel Kang

Port pred4x4_horizontal_down_mmxext (H.264 intra prediction) from x264
(authors:Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26157 to svn://svn.ffmpeg.org/ffmpeg/trunk

e9c576a4 12/29/2010 09:42 PM Daniel Kang

Port pred4x4_horizontal_up_mmxext (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang
at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26156 to svn://svn.ffmpeg.org/ffmpeg/trunk

92f441ae 12/29/2010 09:35 PM Daniel Kang

Port pred4x4_vertical_left_mmxext (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang
at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26155 to svn://svn.ffmpeg.org/ffmpeg/trunk

e8d98764 12/29/2010 09:30 PM Ronald S. Bultje

Merge a few superfluous CONFIG_GPL checks.

Originally committed as revision 26154 to svn://svn.ffmpeg.org/ffmpeg/trunk

42a59278 12/29/2010 08:43 PM Ronald S. Bultje

Whitespace cosmetics.

Originally committed as revision 26152 to svn://svn.ffmpeg.org/ffmpeg/trunk

57b1f334 12/29/2010 08:42 PM Daniel Kang

Port pred8x8l_horizontal_down_sse2/ssse3 (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26151 to svn://svn.ffmpeg.org/ffmpeg/trunk

04cbdf3d 12/29/2010 08:38 PM Daniel Kang

Port pred8x8l_horizontal_down_mmxext (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26150 to svn://svn.ffmpeg.org/ffmpeg/trunk

98c6053c 12/29/2010 08:35 PM Daniel Kang

Port pred8x8l_horizontal_up_mmxext/ssse3 (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26149 to svn://svn.ffmpeg.org/ffmpeg/trunk

ecc7efbb 12/29/2010 08:06 PM Daniel Kang

Port pred8x8l_vertical_left_sse2/ssse3 (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26148 to svn://svn.ffmpeg.org/ffmpeg/trunk

bdd93f1b 12/29/2010 07:54 PM Daniel Kang

Port pred8x8l_vertical_right_sse2/ssse3 (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26147 to svn://svn.ffmpeg.org/ffmpeg/trunk

f25112fc 12/29/2010 07:46 PM Daniel Kang

Port pred8x8l_vertical_right_mmxext (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26146 to svn://svn.ffmpeg.org/ffmpeg/trunk

602a4cb2 12/29/2010 07:19 PM Daniel Kang

Port pred8x8l_down_right_sse2/ssse3 (H.264 intra prediction) from x264
(authors: Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot
d dot kang at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26145 to svn://svn.ffmpeg.org/ffmpeg/trunk

e916acbc 12/29/2010 07:12 PM Daniel Kang

Port pred8x8l_down_right_mmxext (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang
at gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26143 to svn://svn.ffmpeg.org/ffmpeg/trunk

c249e665 12/29/2010 07:02 PM Daniel Kang

Port pred8x8l_down_left_sse2/ssse3 (H.264 intra prediction) from x264 (authors:
Jason, Loren, Holger) to FFmpeg. Patch by Daniel Kang <daniel dot d dot kang at
gmail com>, as part of Google's GCI 2010.

Originally committed as revision 26142 to svn://svn.ffmpeg.org/ffmpeg/trunk

ee1ba9c3 12/29/2010 06:46 PM Daniel Kang

Port pred8x8l_vertical_mmxext/ssse3 (H.264 intra prediction) from x264 to
FFmpeg. Original authors: Holger Lubitz <holger lubitz org>, Jason Garrett-
Glaser <darkshikari gmail com> (approves LGPL relicensing for this code) and
Loren Merritt <lorenm at u dot washington dot edu> (approves LGPL relicensing...

04207ef3 12/29/2010 06:40 PM Daniel Kang

Port pred8x8l_horizontal_mmxext/ssse3 (H.264 intra prediction) from x264 to
FFmpeg. Original authors: Holger Lubitz <holger lubitz org>, Jason Garrett-
Glaser <darkshikari gmail com> (approves LGPL relicensing for this code) and
Loren Merritt <lorenm at u dot washington dot edu> (approves LGPL relicensing...

abab14ea 12/29/2010 06:33 PM Daniel Kang

Port pred8x8l_dc_mmx/ssse3 (H.264 intra prediction) from x264 to FFmpeg.
Original authors: Holger Lubitz <holger lubitz org>, Jason Garrett-Glaser
<darkshikari gmail com> (approves LGPL relicensing for this code) and Loren
Merritt <lorenm at u dot washington dot edu> (approves LGPL relicensing for...

2e93fd4b 12/29/2010 06:11 PM Daniel Kang

Port pred8x8l_top_dc_mmxext/ssse3 (H.264 intra prediction) from x264 to FFmpeg.
Original authors: Holger Lubitz <holger lubitz org>, Jason Garrett-Glaser
<darkshikari gmail com> (approves LGPL relicensing for this code) and Loren
Merritt <lorenm at u dot washington dot edu> (approves LGPL relicensing for...

54a959e4 12/29/2010 06:04 PM Ronald S. Bultje

Move PRED4x4_LOWPASS up so it can be used in 8x8l predict functions while
keeping the functions ordered in the source file (i.e. cosmetics).

Originally committed as revision 26136 to svn://svn.ffmpeg.org/ffmpeg/trunk

a2dfe8d1 12/29/2010 06:00 PM Ronald S. Bultje

Port pred8x8_dc_mmxext (H.264 intra prediction) from x264 to FFmpeg. Original
authors: Holger Lubitz <holger lubitz org>, Jason Garrett-Glaser <darkshikari
gmail com> (approves LGPL relicensing for this code) and Loren Merritt <lorenm
at u dot washington dot edu> (approves LGPL relicensing for this code). Patch...

83ff3f72 12/29/2010 05:45 PM Ronald S. Bultje

Add missing authors to copyright headers.

Originally committed as revision 26133 to svn://svn.ffmpeg.org/ffmpeg/trunk

725a3f9d 12/29/2010 05:42 PM Daniel Kang

Port pred8x8_top_dc_mmxext (H.264 intra prediction) from x264 to FFmpeg.
Original authors: Holger Lubitz <holger lubitz org>, Jason Garrett-Glaser
<darkshikari gmail com> (approves LGPL relicensing for this code) and Loren
Merritt <lorenm at u dot washington dot edu> (approves LGPL relicensing for...

98928c83 12/29/2010 05:34 PM Ronald S. Bultje

Mark recently added pred4x4_down_left_mmxext as CONFIG_GPL. Although Holger
initially said he'd be OK with relicensing, he also said he wanted to have
another look at the patch, and then he went on vacation, so let's play it
safe for now. We can consider removing this again later....

911b32f4 12/24/2010 10:43 PM Daniel Kang

Port pred4x4_down_left_mmxext (H.264 intra prediction) from x264 to FFmpeg.
LGPL relicensing approved by original authors: Holger Lubitz <holger lubitz
org>, Jason Garrett-Glaser <darkshikari gmail com> and Loren Merritt <lorenm
at u dot washington dot edu>. Patch by Daniel Kang <daniel dot d dot kang at...

8d147f1f 12/24/2010 05:23 PM Ronald S. Bultje

For rounding in chroma MC SSSE3, use 16-byte pw_3/4 instead of reading 8 bytes
and then using movlhps to dup it into the higher half of the register.

Originally committed as revision 26086 to svn://svn.ffmpeg.org/ffmpeg/trunk

90f1f3bf 12/06/2010 12:14 AM Baptiste Coudurier

In yadif filter, declare asm constants directly to avoid dependency on libavcodec

Originally committed as revision 25895 to svn://svn.ffmpeg.org/ffmpeg/trunk

9e95999e 12/04/2010 01:06 PM Baptiste Coudurier

10l, add ff_pw_1 to dsputil_mmx for yadif sse2

Originally committed as revision 25881 to svn://svn.ffmpeg.org/ffmpeg/trunk

1761272b 12/01/2010 01:12 PM avcoder

Use SECTION .text for yasm code.

Patch by avcoder, ffmpeg gmail

Originally committed as revision 25859 to svn://svn.ffmpeg.org/ffmpeg/trunk

4f9d25dd 11/02/2010 03:09 AM Ramiro Polla

dnxhd_mmx: prefer xmm registers below xmm6 when they are available

Originally committed as revision 25634 to svn://svn.ffmpeg.org/ffmpeg/trunk

80e33d24 11/01/2010 07:35 PM İsmail Dönmez

dsputil: Use explicit movzbl instead of movzx

This fixes compilation with the latest clang trunk version.

Patch by İsmail Dönmez, ismail at namtrac dot org

Originally committed as revision 25628 to svn://svn.ffmpeg.org/ffmpeg/trunk

a4ece893 10/31/2010 11:37 PM Ramiro Polla

lpc_mmx: add xmm registers to clobber list

Originally committed as revision 25620 to svn://svn.ffmpeg.org/ffmpeg/trunk

e5d5407e 10/31/2010 11:36 PM Ramiro Polla

lpc_mmx: merge some asm blocks

These blocks depended on the compiler keeping xmm registers untouched between
them.

Originally committed as revision 25619 to svn://svn.ffmpeg.org/ffmpeg/trunk

eed299b8 10/31/2010 09:20 PM Ramiro Polla

sad16_sse2: merge 2 asm blocks

Originally committed as revision 25617 to svn://svn.ffmpeg.org/ffmpeg/trunk

153ca56b 10/31/2010 06:14 PM Ramiro Polla

xmm_clobbers: list xmm registers first in clobber list

suncc does not like the leading commas inside the macro, but it has no problem
with trailing commas.

Originally committed as revision 25615 to svn://svn.ffmpeg.org/ffmpeg/trunk

ba404520 10/31/2010 04:28 PM Ramiro Polla

idct_sse2_xvid: only mark xmm>=8 as clobbered on x86_64

Originally committed as revision 25614 to svn://svn.ffmpeg.org/ffmpeg/trunk

05c01807 10/31/2010 03:07 PM Ramiro Polla

motion_est_mmx: prefer xmm registers below xmm6 when they are available

Originally committed as revision 25612 to svn://svn.ffmpeg.org/ffmpeg/trunk

5d543a3d 10/31/2010 01:57 PM Ramiro Polla

dsputil_mmx: add xmm registers to clobber list

Originally committed as revision 25611 to svn://svn.ffmpeg.org/ffmpeg/trunk

e2d13c58 10/31/2010 01:46 PM Ramiro Polla

cosmetics: split long line

Originally committed as revision 25610 to svn://svn.ffmpeg.org/ffmpeg/trunk

0d729e0d 10/31/2010 01:45 PM Ramiro Polla

fdct_mmx: add xmm registers to clobber list

Originally committed as revision 25609 to svn://svn.ffmpeg.org/ffmpeg/trunk

616735eb 10/31/2010 01:17 PM Ramiro Polla

idct_sse2_xvid: add xmm registers to clobber list

Originally committed as revision 25608 to svn://svn.ffmpeg.org/ffmpeg/trunk

9943f3b9 10/31/2010 01:15 PM Ramiro Polla

mpegvideo_mmx: add xmm registers to clobber list

Originally committed as revision 25607 to svn://svn.ffmpeg.org/ffmpeg/trunk

559738ef 10/31/2010 01:13 PM Ramiro Polla

dsputil_mmx: prefer xmm registers below xmm6 when they are available

Originally committed as revision 25606 to svn://svn.ffmpeg.org/ffmpeg/trunk

51d592db 10/30/2010 05:14 PM Ramiro Polla

h264dsp: add xmm registers to clobber list

Originally committed as revision 25604 to svn://svn.ffmpeg.org/ffmpeg/trunk

ac19f4a3 10/28/2010 06:31 PM Ramiro Polla

indent

Originally committed as revision 25598 to svn://svn.ffmpeg.org/ffmpeg/trunk

cae05859 10/28/2010 06:22 PM Ramiro Polla

h264dsp: merge some more asm blocks

Originally committed as revision 25597 to svn://svn.ffmpeg.org/ffmpeg/trunk

c6a908be 10/25/2010 08:29 PM Ramiro Polla

dct32: mark xmm registers in clobber list in ff_dct32_float_sse()

Originally committed as revision 25569 to svn://svn.ffmpeg.org/ffmpeg/trunk

b32c9ca9 10/25/2010 06:02 PM Ramiro Polla

h264dsp: merge some asm blocks

Some code was initializing some xmm registers in one asm block and using them
in the following block, assuming they wouldn't be changed in between blocks.

Originally committed as revision 25568 to svn://svn.ffmpeg.org/ffmpeg/trunk

6c214280 10/07/2010 07:18 PM Reimar Döffinger

Add d modifier to asm argument to fix nasm compilation.

Originally committed as revision 25397 to svn://svn.ffmpeg.org/ffmpeg/trunk

326bf69a 10/06/2010 01:27 AM Ramiro Polla

fft: mark xmm registers as clobbered in ff_imdct_calc_sse

Originally committed as revision 25363 to svn://svn.ffmpeg.org/ffmpeg/trunk

dd68d4db 10/05/2010 10:06 PM Ronald S. Bultje

MMX, MMX2, SSE2 and SSSE3 optimizations for pred16x16/8x8_plane H264 intra
prediction (plus some with different rounding for svq3/rv40). Speedup (for
SSSE3) about ~6-fold, 3.6% faster overall with cathedral sample.

Originally committed as revision 25361 to svn://svn.ffmpeg.org/ffmpeg/trunk

9276bddd 10/04/2010 01:08 PM İsmail Dönmez

snowdsp: Explicitly state the operand sizes

Fixes compilation with clang's builtin assembler

Patch by İsmail Dönmez, ismail at namtrac dot org

Originally committed as revision 25331 to svn://svn.ffmpeg.org/ffmpeg/trunk

a52ffc3f 09/29/2010 05:42 PM Ronald S. Bultje

Move static inline function to a macro, so that constant propagation in
inline asm works for gcc-3.x also (hopefully). Should fix gcc-3.x FATE
breakage after r25254.

Originally committed as revision 25262 to svn://svn.ffmpeg.org/ffmpeg/trunk

329d689f 09/29/2010 03:34 PM Eli Friedman

Use sse2 variant of put_pixels16() for no_rnd also. Provides a minor speed
increase to e.g. vc1, snow and mpeg decoding.

Patch by Eli Friedman <eli dot friedman gmail com>.

Originally committed as revision 25259 to svn://svn.ffmpeg.org/ffmpeg/trunk

cd17285e 09/29/2010 02:04 PM Ronald S. Bultje

Merge b_idx and edge variables, and optimize the ASM to directly load variables
from memory locations/offsets depending on b_idx plus constants, rather than
having gcc do this. This saves several lea calls and together saves about
10 cycles in h264_loop_filter_strength_mmx2()....

0cc8a5d0 09/29/2010 02:03 PM Ronald S. Bultje

Remove mv_mask variable. Replace the related pand -1/0 instructions by either
a pxor, or remove the instruction alltogether. Altogether, this saves 1
instruction.

Originally committed as revision 25255 to svn://svn.ffmpeg.org/ffmpeg/trunk

c0673f2c 09/29/2010 02:02 PM Ronald S. Bultje

Remove d_idx as a variable, and instead load it as a constant in the asm.
This has no measurable speed effect because the surrounding code doesn't
take advantage of this yet.

Originally committed as revision 25254 to svn://svn.ffmpeg.org/ffmpeg/trunk

2c3135f6 09/29/2010 01:35 PM Ronald S. Bultje

Unroll inner bidir loop in h264_loop_filter_strength_mmx2(), which gets rid
of the d_idx variable and therefore allows for future optimizations. No speed
difference by this commit itself.

Originally committed as revision 25253 to svn://svn.ffmpeg.org/ffmpeg/trunk

4b81511c 09/29/2010 01:34 PM Ronald S. Bultje

Unloop the outer loop in h264_loop_filter_strength_mmx2(), which allows
inlining various constants within the loop code. 20 cycles faster on
cathedral sample.

Originally committed as revision 25252 to svn://svn.ffmpeg.org/ffmpeg/trunk

02b424d9 09/26/2010 09:15 AM Reimar Döffinger

Add d suffix to movd target register to make it work with nasm.

Originally committed as revision 25206 to svn://svn.ffmpeg.org/ffmpeg/trunk

dc77e985 09/26/2010 09:08 AM Reimar Döffinger

Split and then simplify address generation macro.
Allows nasm to work for this code.

Originally committed as revision 25205 to svn://svn.ffmpeg.org/ffmpeg/trunk

7e117771 09/24/2010 03:31 PM Ronald S. Bultje

Remove unused variable.

Originally committed as revision 25173 to svn://svn.ffmpeg.org/ffmpeg/trunk

ae112918 09/24/2010 02:07 PM Ronald S. Bultje

Unroll loop in h264_idct_add16intra_sse2(). Basically identical to r25171, this
inlines scan8[] and removes loop setup. 15% faster, 0.4% overall.

See "[PATCH] unroll loop in h264_idct_add8_sse2()" thread on ML.

Originally committed as revision 25172 to svn://svn.ffmpeg.org/ffmpeg/trunk

4bca6774 09/24/2010 02:05 PM Ronald S. Bultje

Unroll loop in h264_idct_add8_sse2(). This means we can inline scan8[] in the
code directly also and remove loop setup. 20% faster in function, 0.8% overall.

See "[PATCH] unroll loop in h264_idct_add8_sse2()" thread on ML.

Originally committed as revision 25171 to svn://svn.ffmpeg.org/ffmpeg/trunk

c0bc8b9a 09/21/2010 05:57 PM Måns Rullgård

x86: disable SSE functions using stack when stack is not aligned

This fixes crashes with ICC 10.1.

Originally committed as revision 25153 to svn://svn.ffmpeg.org/ffmpeg/trunk

f41237c9 09/18/2010 08:44 PM Måns Rullgård

x86: remove hack disabling sse2 h264 loop filter with 32-bit icc

Originally committed as revision 25146 to svn://svn.ffmpeg.org/ffmpeg/trunk

ada65af9 09/17/2010 12:24 PM Ronald S. Bultje

Don't access upper 32 bits of a 32-bit int on 64-bit systems.

Originally committed as revision 25140 to svn://svn.ffmpeg.org/ffmpeg/trunk

6c3d0218 09/17/2010 03:01 AM Ronald S. Bultje

Properly add HAVE_YASM around yasmified symbols. Should fix compile error
on configurations using --disable-yasm.

Originally committed as revision 25138 to svn://svn.ffmpeg.org/ffmpeg/trunk

e2e34104 09/17/2010 01:56 AM Ronald S. Bultje

Move hadamard_diff{,16}_{mmx,mmx2,sse2,ssse3}() from inline asm to yasm,
which will hopefully solve the Win64/FATE failures caused by these functions.

Originally committed as revision 25137 to svn://svn.ffmpeg.org/ffmpeg/trunk

d0acc2d2 09/17/2010 01:44 AM Ronald S. Bultje

Move sse16_sse2() from inline asm to yasm. It is one of the functions causing
Win64/FATE issues.

Originally committed as revision 25136 to svn://svn.ffmpeg.org/ffmpeg/trunk

1d16a1cf 09/14/2010 01:36 PM Ronald S. Bultje

Rename h264_idct_sse2.asm to h264_idct.asm; move inline IDCT asm from
h264dsp_mmx.c to h264_idct.asm (as yasm code). Because the loops are now
coded in asm instead of C, this is (depending on the function) up to 50%
faster for cases where gcc didn't do a great job at looping....

8acb554a 09/10/2010 02:25 AM Jason Garrett-Glaser

LGPL SSE2 H.264 iDCT
This leaves no more GPL-only H.264 decoding asm code.

Approved by Loren.

Originally committed as revision 25092 to svn://svn.ffmpeg.org/ffmpeg/trunk

c6c98d08 09/08/2010 03:07 PM Stefano Sabatini

Move mm_support() from libavcodec to libavutil, make it a public
function and rename it to av_get_cpu_flags().

Originally committed as revision 25076 to svn://svn.ffmpeg.org/ffmpeg/trunk

b1c32fb5 09/05/2010 10:10 AM Reimar Döffinger

Use "d" suffix for general-purpose registers used with movd.
This increases compatibilty with nasm and is also more consistent,
e.g. with h264_intrapred.asm and h264_chromamc.asm that already
do it that way.

Originally committed as revision 25042 to svn://svn.ffmpeg.org/ffmpeg/trunk

7160bb71 09/04/2010 09:59 AM Stefano Sabatini

Rename FF_MM_ symbols related to CPU features flags as AV_CPU_FLAG_
symbols, and move them from libavcodec/avcodec.h to libavutil/cpu.h.

Originally committed as revision 25040 to svn://svn.ffmpeg.org/ffmpeg/trunk

2c166c3a 09/03/2010 04:52 PM Ronald S. Bultje

Port latest x264 deblock asm (before they moved to using NV12 as internal
format), LGPL'ed with permission from Jason and Loren. This includes mmx2
code, so remove inline asm from h264dsp_mmx.c accordingly.

Originally committed as revision 25031 to svn://svn.ffmpeg.org/ffmpeg/trunk

a10a9f5c 09/01/2010 11:19 PM Eli Friedman

Fix typo in r25019.

Patch by Eli Friedman <eli.friedman at gmail dot com>.

Originally committed as revision 25022 to svn://svn.ffmpeg.org/ffmpeg/trunk

615da9b1 09/01/2010 09:10 PM Ronald S. Bultje

Unscrew breakage after my last commit because of symbol prefixes.

Originally committed as revision 25020 to svn://svn.ffmpeg.org/ffmpeg/trunk

a33a2562 09/01/2010 08:56 PM Ronald S. Bultje

Rename h264_weight_sse2.asm to h264_weight.asm; add 16x8/8x16/8x4 non-square
biweight code to sse2/ssse3; add sse2 weight code; and use that same code to
create mmx2 functions also, so that the inline asm in h264dsp_mmx.c can be
removed. OK'ed by Jason on IRC....

14bc1f24 09/01/2010 08:48 PM Ronald S. Bultje

Split h264dsp_mmx.c (which was #included in dsputil_mmx.c) in h264_qpel_mmx.c,
still #included in dsputil_mmx.c and is part of DSPContext, and h264dsp_mmx.c,
which represents H264DSPContext and is now compiled on its own.

Originally committed as revision 25018 to svn://svn.ffmpeg.org/ffmpeg/trunk

5929b3a6 08/31/2010 12:32 PM Ronald S. Bultje

Fix vertical align.

Originally committed as revision 25009 to svn://svn.ffmpeg.org/ffmpeg/trunk

79ce0f00 08/30/2010 08:30 PM Ronald S. Bultje

Fix compilation failure if yasm is disabled (missing vp3 symbols).

Originally committed as revision 24992 to svn://svn.ffmpeg.org/ffmpeg/trunk

de1c253b 08/30/2010 04:34 PM Ronald S. Bultje

Split intra prediction initialization (i.e. assigning of function pointers)
into its own file, it doesn't belong in h264dsp_mmx.c (much less so in
dsputil_mmx.c).

Originally committed as revision 24990 to svn://svn.ffmpeg.org/ffmpeg/trunk

d0eb5a11 08/30/2010 04:31 PM Ronald S. Bultje

Move H264 chroma MC from inline asm to yasm. This fixes VP3/5/6 and VC-1
fate failures on Win64.

Originally committed as revision 24989 to svn://svn.ffmpeg.org/ffmpeg/trunk

e9f5f020 08/30/2010 04:25 PM Ronald S. Bultje

Move VP3 IDCT functions from inline ASM to YASM. This fixes part of the VP3/5/6
issues on Win64.

Originally committed as revision 24988 to svn://svn.ffmpeg.org/ffmpeg/trunk

7e7c4b60 08/30/2010 04:22 PM Ronald S. Bultje

Put ff_ prefix on non-static {put_signed,put,add}_pixels_clamped_mmx()
functions.

Originally committed as revision 24987 to svn://svn.ffmpeg.org/ffmpeg/trunk

19d929f9 08/28/2010 09:03 PM Loren Merritt

cosmetics in imdct_sse

Originally committed as revision 24958 to svn://svn.ffmpeg.org/ffmpeg/trunk

4eca52ed 08/26/2010 02:33 PM Ronald S. Bultje

Fix typos when converting inline asm to yasm, fixes MMX-only fate-ea-vp61.

Originally committed as revision 24948 to svn://svn.ffmpeg.org/ffmpeg/trunk