h264pred: fix one more aliasing violation.
authorRonald S. Bultje <rsbultje@gmail.com>
Wed, 11 May 2011 12:30:02 +0000 (08:30 -0400)
committerAnton Khirnov <anton@khirnov.net>
Wed, 11 May 2011 13:48:51 +0000 (15:48 +0200)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
libavcodec/h264pred_template.c

index c600133..1c1fe0b 100644 (file)
@@ -695,10 +695,12 @@ static void FUNCC(pred8x8l_horizontal)(uint8_t *_src, int has_topleft, int has_t
 {
     pixel *src = (pixel*)_src;
     int stride = _stride/sizeof(pixel);
+    pixel4 a;
 
     PREDICT_8x8_LOAD_LEFT;
-#define ROW(y) ((pixel4*)(src+y*stride))[0] =\
-               ((pixel4*)(src+y*stride))[1] = PIXEL_SPLAT_X4(l##y)
+#define ROW(y) a = PIXEL_SPLAT_X4(l##y); \
+               AV_WN4PA(src+y*stride, a); \
+               AV_WN4PA(src+y*stride+4, a);
     ROW(0); ROW(1); ROW(2); ROW(3); ROW(4); ROW(5); ROW(6); ROW(7);
 #undef ROW
 }