Rename h264_idct_sse2.asm to h264_idct.asm; move inline IDCT asm from
authorRonald S. Bultje <rsbultje@gmail.com>
Tue, 14 Sep 2010 13:36:26 +0000 (13:36 +0000)
committerRonald S. Bultje <rsbultje@gmail.com>
Tue, 14 Sep 2010 13:36:26 +0000 (13:36 +0000)
commit1d16a1cf99488f16492b1bb48e023f4da8377e07
treebbb29695e29d17f22118af56d4c511b286a08e11
parent6ebf0bfc17253e29a226e888fb9b7b31574a2eed
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.

Since h264_idct_add8() is now faster than the manual loop setup in h264.c,
in-asm idct calling can now be enabled for chroma as well (see r16207). For
MMX, this is 5% faster. For SSE2 (which isn't done for chroma if h264.c does
the looping), this makes it up to 50% faster. Speed gain overall is ~0.5-1.0%.

Originally committed as revision 25119 to svn://svn.ffmpeg.org/ffmpeg/trunk
libavcodec/h264.c
libavcodec/x86/Makefile
libavcodec/x86/h264_idct.asm [new file with mode: 0644]
libavcodec/x86/h264_idct_sse2.asm [deleted file]
libavcodec/x86/h264dsp_mmx.c