diff --git a/libavcodec/x86/dsputil_mmx.c b/libavcodec/x86/dsputil_mmx.c index f402b8bee3..a457d55ad7 100644 --- a/libavcodec/x86/dsputil_mmx.c +++ b/libavcodec/x86/dsputil_mmx.c @@ -2491,12 +2491,12 @@ static void sub_int16_sse2(int16_t * v1, int16_t * v2, int order) static int32_t scalarproduct_int16_sse2(int16_t * v1, int16_t * v2, int order, int shift) { int res = 0; - DECLARE_ALIGNED_16(int64_t, sh); + DECLARE_ALIGNED_16(xmm_reg, sh); x86_reg o = -(order << 1); v1 += order; v2 += order; - sh = shift; + sh.a = shift; __asm__ volatile( "pxor %%xmm7, %%xmm7 \n\t" "1: \n\t"