build vc1dsp_mmx.c in its own compilation unit

Originally committed as revision 11102 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Aurelien Jacobs 2007-11-27 22:42:55 +00:00
parent 43de50659b
commit 5b67ce2afa
3 changed files with 11 additions and 8 deletions

View File

@ -363,11 +363,13 @@ OBJS-$(CONFIG_GPL) += i386/idct_mmx.o
OBJS-$(CONFIG_CAVS_DECODER) += i386/cavsdsp_mmx.o
OBJS-$(CONFIG_SNOW_DECODER) += i386/snowdsp_mmx.o
OBJS-$(CONFIG_VC1_DECODER) += i386/vc1dsp_mmx.o
OBJS-$(CONFIG_VP3_DECODER) += i386/vp3dsp_mmx.o i386/vp3dsp_sse2.o
OBJS-$(CONFIG_VP5_DECODER) += i386/vp3dsp_mmx.o i386/vp3dsp_sse2.o
OBJS-$(CONFIG_VP6_DECODER) += i386/vp3dsp_mmx.o i386/vp3dsp_sse2.o
OBJS-$(CONFIG_VP6A_DECODER) += i386/vp3dsp_mmx.o i386/vp3dsp_sse2.o
OBJS-$(CONFIG_VP6F_DECODER) += i386/vp3dsp_mmx.o i386/vp3dsp_sse2.o
OBJS-$(CONFIG_WMV3_DECODER) += i386/vc1dsp_mmx.o
endif
ASM_OBJS-$(ARCH_ARMV4L) += armv4l/jrevdct_arm.o \

View File

@ -2843,10 +2843,6 @@ PREFETCH(prefetch_3dnow, prefetch)
#undef PREFETCH
#include "h264dsp_mmx.c"
#if defined(CONFIG_VC1_DECODER) || defined(CONFIG_WMV3_DECODER) \
|| defined(CONFIG_VC1_ENCODER) || defined(CONFIG_WMV3_ENCODER)
#include "vc1dsp_mmx.c"
#endif
/* AVS specific */
void ff_cavsdsp_init_mmx2(DSPContext* c, AVCodecContext *avctx);
@ -2864,6 +2860,13 @@ void ff_avg_cavs_qpel16_mc00_mmx2(uint8_t *dst, uint8_t *src, int stride) {
avg_pixels16_mmx(dst, src, stride, 16);
}
/* VC1 specific */
void ff_vc1dsp_init_mmx(DSPContext* dsp, AVCodecContext *avctx);
void ff_put_vc1_mspel_mc00_mmx(uint8_t *dst, const uint8_t *src, int stride, int rnd) {
put_pixels8_mmx(dst, src, stride, 8);
}
/* external functions, from idct_mmx.c */
void ff_mmx_idct(DCTELEM *block);
void ff_mmxext_idct(DCTELEM *block);

View File

@ -444,9 +444,7 @@ static void vc1_mspel_mc(uint8_t *dst, const uint8_t *src, int stride,
vc1_put_shift_8bits[hmode](dst, src, stride, rnd, 1);
}
static void put_vc1_mspel_mc00_mmx(uint8_t *dst, const uint8_t *src, int stride, int rnd) {
put_pixels8_mmx(dst, src, stride, 8);
}
void ff_put_vc1_mspel_mc00_mmx(uint8_t *dst, const uint8_t *src, int stride, int rnd);
/** Macro to ease bicubic filter interpolation functions declarations */
#define DECLARE_FUNCTION(a, b) \
@ -474,7 +472,7 @@ DECLARE_FUNCTION(3, 2)
DECLARE_FUNCTION(3, 3)
void ff_vc1dsp_init_mmx(DSPContext* dsp, AVCodecContext *avctx) {
dsp->put_vc1_mspel_pixels_tab[ 0] = put_vc1_mspel_mc00_mmx;
dsp->put_vc1_mspel_pixels_tab[ 0] = ff_put_vc1_mspel_mc00_mmx;
dsp->put_vc1_mspel_pixels_tab[ 4] = put_vc1_mspel_mc01_mmx;
dsp->put_vc1_mspel_pixels_tab[ 8] = put_vc1_mspel_mc02_mmx;
dsp->put_vc1_mspel_pixels_tab[12] = put_vc1_mspel_mc03_mmx;