Workaround for gcc 3.4 to align sh properly
authorDavid Conrad <lessen42@gmail.com>
Mon, 26 Jan 2009 03:40:48 +0000 (03:40 +0000)
committerDavid Conrad <lessen42@gmail.com>
Mon, 26 Jan 2009 03:40:48 +0000 (03:40 +0000)
Originally committed as revision 16797 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/x86/dsputil_mmx.c

index f402b8b..a457d55 100644 (file)
@@ -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"