diff --git a/libavcodec/x86/dsputil_mmx.c b/libavcodec/x86/dsputil_mmx.c
index 1e537c702f..f820d1f0d4 100644
--- a/libavcodec/x86/dsputil_mmx.c
+++ b/libavcodec/x86/dsputil_mmx.c
@@ -1656,7 +1656,7 @@ void ff_avg_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src, int stride)
 }
 
 typedef void emulated_edge_mc_func(uint8_t *dst, const uint8_t *src,
-                                   int linesize, int block_w, int block_h,
+                                   ptrdiff_t linesize, int block_w, int block_h,
                                    int src_x, int src_y, int w, int h);
 
 static av_always_inline void gmc(uint8_t *dst, uint8_t *src,