2010-03-16 22:23:03 +01:00
|
|
|
OBJS-$(CONFIG_MLP_DECODER) += x86/mlpdsp.o
|
|
|
|
OBJS-$(CONFIG_TRUEHD_DECODER) += x86/mlpdsp.o
|
2012-02-02 23:55:57 +01:00
|
|
|
OBJS-$(CONFIG_XMM_CLOBBER_TEST) += x86/w64xmmtest.o
|
2010-03-16 22:22:59 +01:00
|
|
|
|
2012-03-27 23:10:02 +02:00
|
|
|
MMX-OBJS += x86/dsputil_mmx.o \
|
2012-02-02 23:55:57 +01:00
|
|
|
x86/fdct_mmx.o \
|
|
|
|
x86/fmtconvert_mmx.o \
|
|
|
|
x86/idct_mmx_xvid.o \
|
|
|
|
x86/idct_sse2_xvid.o \
|
|
|
|
x86/motion_est_mmx.o \
|
|
|
|
x86/mpegvideo_mmx.o \
|
|
|
|
x86/simple_idct_mmx.o \
|
2011-05-17 18:26:01 +02:00
|
|
|
|
2012-02-02 23:55:57 +01:00
|
|
|
MMX-OBJS-$(CONFIG_AAC_DECODER) += x86/sbrdsp_init.o
|
|
|
|
MMX-OBJS-$(CONFIG_AC3DSP) += x86/ac3dsp_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_CAVS_DECODER) += x86/cavsdsp_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_DNXHD_ENCODER) += x86/dnxhd_mmx.o
|
2012-03-26 20:34:29 +02:00
|
|
|
MMX-OBJS-$(CONFIG_DWT) += x86/snowdsp_mmx.o \
|
|
|
|
x86/dwt.o
|
2012-02-02 23:55:57 +01:00
|
|
|
MMX-OBJS-$(CONFIG_ENCODERS) += x86/dsputilenc_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_FFT) += x86/fft.o
|
|
|
|
MMX-OBJS-$(CONFIG_GPL) += x86/idct_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_H264DSP) += x86/h264dsp_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred_init.o
|
|
|
|
MMX-OBJS-$(CONFIG_LPC) += x86/lpc_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_MPEGAUDIODSP) += x86/mpegaudiodec_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp-init.o
|
|
|
|
MMX-OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp-init.o
|
2012-03-26 20:34:29 +02:00
|
|
|
MMX-OBJS-$(CONFIG_PRORES_LGPL_DECODER) += x86/proresdsp-init.o
|
2012-02-02 23:55:57 +01:00
|
|
|
MMX-OBJS-$(CONFIG_RV30_DECODER) += x86/rv34dsp_init.o
|
|
|
|
MMX-OBJS-$(CONFIG_RV40_DECODER) += x86/rv34dsp_init.o \
|
|
|
|
x86/rv40dsp_init.o
|
2012-03-26 20:34:29 +02:00
|
|
|
MMX-OBJS-$(CONFIG_V210_DECODER) += x86/v210-init.o
|
2012-02-02 23:55:57 +01:00
|
|
|
MMX-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_mmx.o
|
|
|
|
MMX-OBJS-$(CONFIG_VP5_DECODER) += x86/vp56dsp_init.o
|
|
|
|
MMX-OBJS-$(CONFIG_VP6_DECODER) += x86/vp56dsp_init.o
|
|
|
|
MMX-OBJS-$(CONFIG_VP8_DECODER) += x86/vp8dsp-init.o
|
|
|
|
|
|
|
|
YASM-OBJS-$(CONFIG_AAC_DECODER) += x86/sbrdsp.o
|
|
|
|
YASM-OBJS-$(CONFIG_AC3DSP) += x86/ac3dsp.o
|
|
|
|
YASM-OBJS-$(CONFIG_DCT) += x86/dct32_sse.o
|
2012-03-26 20:34:29 +02:00
|
|
|
YASM-OBJS-$(CONFIG_DIRAC_DECODER) += x86/diracdsp_mmx.o x86/diracdsp_yasm.o
|
2012-02-02 23:55:57 +01:00
|
|
|
YASM-OBJS-$(CONFIG_ENCODERS) += x86/dsputilenc_yasm.o
|
2010-03-16 22:22:59 +01:00
|
|
|
YASM-OBJS-FFT-$(HAVE_AMD3DNOW) += x86/fft_3dn.o
|
|
|
|
YASM-OBJS-FFT-$(HAVE_AMD3DNOWEXT) += x86/fft_3dn2.o
|
|
|
|
YASM-OBJS-FFT-$(HAVE_SSE) += x86/fft_sse.o
|
|
|
|
YASM-OBJS-$(CONFIG_FFT) += x86/fft_mmx.o \
|
|
|
|
$(YASM-OBJS-FFT-yes)
|
2010-06-25 21:06:29 +02:00
|
|
|
|
2011-10-06 17:57:17 +02:00
|
|
|
YASM-OBJS-$(CONFIG_DWT) += x86/dwt_yasm.o
|
2011-12-13 22:54:52 +01:00
|
|
|
YASM-OBJS-$(CONFIG_H264CHROMA) += x86/h264_chromamc.o \
|
|
|
|
x86/h264_chromamc_10bit.o
|
2010-09-03 18:52:46 +02:00
|
|
|
YASM-OBJS-$(CONFIG_H264DSP) += x86/h264_deblock.o \
|
2011-05-10 17:55:12 +02:00
|
|
|
x86/h264_deblock_10bit.o \
|
2010-09-14 15:36:26 +02:00
|
|
|
x86/h264_idct.o \
|
2011-05-24 21:14:38 +02:00
|
|
|
x86/h264_idct_10bit.o \
|
|
|
|
x86/h264_weight.o \
|
2012-02-02 23:55:57 +01:00
|
|
|
x86/h264_weight_10bit.o
|
2011-06-06 01:20:05 +02:00
|
|
|
YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o \
|
|
|
|
x86/h264_intrapred_10bit.o
|
2011-12-18 14:10:33 +01:00
|
|
|
YASM-OBJS-$(CONFIG_H264QPEL) += x86/h264_qpel_10bit.o
|
2011-11-07 21:54:50 +01:00
|
|
|
YASM-OBJS-$(CONFIG_MPEGAUDIODSP) += x86/imdct36_sse.o
|
2012-01-27 16:21:55 +01:00
|
|
|
YASM-OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp.o
|
2011-10-12 19:10:22 +02:00
|
|
|
YASM-OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp.o
|
2012-03-26 20:34:29 +02:00
|
|
|
YASM-OBJS-$(CONFIG_PRORES_LGPL_DECODER) += x86/proresdsp.o
|
2012-01-01 18:33:22 +01:00
|
|
|
YASM-OBJS-$(CONFIG_RV30_DECODER) += x86/rv34dsp.o
|
rv40: x86 SIMD for biweight
Provide MMX, SSE2 and SSSE3 versions, with a fast-path when the weights are
multiples of 512 (which is often the case when the values round up nicely).
*_TIMER report for the 16x16 and 8x8 cases:
C:
9015 decicycles in 16, 524257 runs, 31 skips
2656 decicycles in 8, 524271 runs, 17 skips
MMX:
4156 decicycles in 16, 262090 runs, 54 skips
1206 decicycles in 8, 262131 runs, 13 skips
MMX on fast-path:
2760 decicycles in 16, 524222 runs, 66 skips
995 decicycles in 8, 524252 runs, 36 skips
SSE2:
2163 decicycles in 16, 262131 runs, 13 skips
832 decicycles in 8, 262137 runs, 7 skips
SSE2 with fast path:
1783 decicycles in 16, 524276 runs, 12 skips
711 decicycles in 8, 524283 runs, 5 skips
SSSE3:
2117 decicycles in 16, 262136 runs, 8 skips
814 decicycles in 8, 262143 runs, 1 skips
SSSE3 with fast path:
1315 decicycles in 16, 524285 runs, 3 skips
578 decicycles in 8, 524286 runs, 2 skips
This means around a 4% speedup for some sequences.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-12 00:11:15 +01:00
|
|
|
YASM-OBJS-$(CONFIG_RV40_DECODER) += x86/rv34dsp.o \
|
|
|
|
x86/rv40dsp.o
|
2011-10-18 20:50:49 +02:00
|
|
|
YASM-OBJS-$(CONFIG_V210_DECODER) += x86/v210.o
|
2010-07-12 00:53:01 +02:00
|
|
|
YASM-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_yasm.o
|
2010-08-30 18:25:46 +02:00
|
|
|
YASM-OBJS-$(CONFIG_VP3_DECODER) += x86/vp3dsp.o
|
|
|
|
YASM-OBJS-$(CONFIG_VP5_DECODER) += x86/vp3dsp.o
|
|
|
|
YASM-OBJS-$(CONFIG_VP6_DECODER) += x86/vp3dsp.o \
|
|
|
|
x86/vp56dsp.o
|
2010-06-27 04:01:45 +02:00
|
|
|
YASM-OBJS-$(CONFIG_VP8_DECODER) += x86/vp8dsp.o
|
2012-02-02 23:55:57 +01:00
|
|
|
|
2012-03-27 23:10:02 +02:00
|
|
|
YASM-OBJS += x86/dsputil_yasm.o \
|
2010-07-31 16:50:51 +02:00
|
|
|
x86/deinterlace.o \
|
2011-01-30 16:06:46 +01:00
|
|
|
x86/fmtconvert.o \
|