comparison x86/Makefile @ 12492:58a960d6e34c libavcodec

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%.
author rbultje
date Tue, 14 Sep 2010 13:36:26 +0000
parents 14896fa76003
children c5ffa8b81f9c
comparison
equal deleted inserted replaced
12491:990f8a5fc8af 12492:58a960d6e34c
8 $(YASM-OBJS-FFT-yes) 8 $(YASM-OBJS-FFT-yes)
9 9
10 MMX-OBJS-$(CONFIG_H264DSP) += x86/h264dsp_mmx.o 10 MMX-OBJS-$(CONFIG_H264DSP) += x86/h264dsp_mmx.o
11 YASM-OBJS-$(CONFIG_H264DSP) += x86/h264_deblock.o \ 11 YASM-OBJS-$(CONFIG_H264DSP) += x86/h264_deblock.o \
12 x86/h264_weight.o \ 12 x86/h264_weight.o \
13 x86/h264_idct_sse2.o \ 13 x86/h264_idct.o \
14 14
15 YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o 15 YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o
16 MMX-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred_init.o 16 MMX-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred_init.o
17 17
18 YASM-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_yasm.o 18 YASM-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_yasm.o