diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2011-05-11 17:22:41 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2011-05-11 17:22:41 +0200 |
commit | c77b858c4cafe74cd663bdd1bc9d96a487b20e14 (patch) | |
tree | febb3d9177f3ce54458998604981d43b5dadfaa3 /libavcodec/h264pred_template.c | |
parent | 0f6bbc5a0699f9eb52dcf856c0e6e981f7abe3bb (diff) | |
download | ffmpeg-c77b858c4cafe74cd663bdd1bc9d96a487b20e14.tar.gz |
h264pred: fix one more aliasing violation.
Diffstat (limited to 'libavcodec/h264pred_template.c')
-rw-r--r-- | libavcodec/h264pred_template.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/h264pred_template.c b/libavcodec/h264pred_template.c index d056e20e80..3cd4463d76 100644 --- a/libavcodec/h264pred_template.c +++ b/libavcodec/h264pred_template.c @@ -695,10 +695,12 @@ static void FUNCC(pred8x8l_horizontal)(uint8_t *p_src, int has_topleft, int has_ { pixel *src = (pixel*)p_src; int stride = p_stride>>(sizeof(pixel)-1); + 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 } |