diff --git a/libavcodec/i386/dsputil_mmx.c b/libavcodec/i386/dsputil_mmx.c
index 54c1d2d635266c1b43e1a69649df7e0ac9237b40..3af3974c2a041836575f1536fd13d07890457712 100644
--- a/libavcodec/i386/dsputil_mmx.c
+++ b/libavcodec/i386/dsputil_mmx.c
@@ -2732,6 +2732,9 @@ void dsputil_init_mmx(DSPContext* c, AVCodecContext *avctx)
         c->put_h264_chroma_pixels_tab[0]= put_h264_chroma_mc8_mmx;
         c->put_h264_chroma_pixels_tab[1]= put_h264_chroma_mc4_mmx;
 
+        c->h264_idct_dc_add=
+        c->h264_idct_add= ff_h264_idct_add_mmx;
+
         if (mm_flags & MM_MMXEXT) {
             c->put_pixels_tab[0][1] = put_pixels16_x2_mmx2;
             c->put_pixels_tab[0][2] = put_pixels16_y2_mmx2;
@@ -2753,7 +2756,6 @@ void dsputil_init_mmx(DSPContext* c, AVCodecContext *avctx)
             c->vsad[4]= vsad_intra16_mmx2;
 #endif //CONFIG_ENCODERS
 
-            c->h264_idct_add= ff_h264_idct_add_mmx2;
             c->h264_idct_dc_add= ff_h264_idct_dc_add_mmx2;
             c->h264_idct8_dc_add= ff_h264_idct8_dc_add_mmx2;
 
diff --git a/libavcodec/i386/h264dsp_mmx.c b/libavcodec/i386/h264dsp_mmx.c
index 5d05152b04dc75299680deca11a66f8e2099cbda..65fa95d3e5533f153f7c591e75b12e7832fafea1 100644
--- a/libavcodec/i386/h264dsp_mmx.c
+++ b/libavcodec/i386/h264dsp_mmx.c
@@ -65,7 +65,7 @@
     "packuswb  "#z",    "#p" \n\t"\
     "movd      "#p",    (%0) \n\t"
 
-void ff_h264_idct_add_mmx2(uint8_t *dst, int16_t *block, int stride)
+static void ff_h264_idct_add_mmx(uint8_t *dst, int16_t *block, int stride)
 {
     /* Load dct coeffs */
     asm volatile(
@@ -104,7 +104,7 @@ void ff_h264_idct_add_mmx2(uint8_t *dst, int16_t *block, int stride)
     );
 }
 
-void ff_h264_idct_dc_add_mmx2(uint8_t *dst, int16_t *block, int stride)
+static void ff_h264_idct_dc_add_mmx2(uint8_t *dst, int16_t *block, int stride)
 {
     int dc = (block[0] + 32) >> 6;
     asm volatile(
@@ -140,7 +140,7 @@ void ff_h264_idct_dc_add_mmx2(uint8_t *dst, int16_t *block, int stride)
     );
 }
 
-void ff_h264_idct8_dc_add_mmx2(uint8_t *dst, int16_t *block, int stride)
+static void ff_h264_idct8_dc_add_mmx2(uint8_t *dst, int16_t *block, int stride)
 {
     int dc = (block[0] + 32) >> 6;
     int y;