# HG changeset patch # User michael # Date 1171660973 0 # Node ID 33c6fe489f629d928e424a652d6a49d4bce270c4 # Parent 481763d70193fafdc886fc657515869c8bae3eee add a few asserts to ensure alignment diff -r 481763d70193 -r 33c6fe489f62 i386/h264dsp_mmx.c --- a/i386/h264dsp_mmx.c Fri Feb 16 21:21:07 2007 +0000 +++ b/i386/h264dsp_mmx.c Fri Feb 16 21:22:53 2007 +0000 @@ -1311,6 +1311,7 @@ uint64_t temp[SIZE*(SIZE<8?12:24)/4 + SIZE*SIZE/8];\ uint8_t * const halfHV= (uint8_t*)temp;\ int16_t * const tmp= ((int16_t*)temp) + SIZE*SIZE/2;\ + assert((int)temp & 7 == 0);\ put_h264_qpel ## SIZE ## _hv_lowpass_ ## MMX(halfHV, tmp, src, SIZE, SIZE, stride);\ OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src, halfHV, stride, SIZE);\ }\ @@ -1319,6 +1320,7 @@ uint64_t temp[SIZE*(SIZE<8?12:24)/4 + SIZE*SIZE/8];\ uint8_t * const halfHV= (uint8_t*)temp;\ int16_t * const tmp= ((int16_t*)temp) + SIZE*SIZE/2;\ + assert((int)temp & 7 == 0);\ put_h264_qpel ## SIZE ## _hv_lowpass_ ## MMX(halfHV, tmp, src, SIZE, SIZE, stride);\ OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src+stride, halfHV, stride, SIZE);\ }\ @@ -1327,6 +1329,7 @@ uint64_t temp[SIZE*(SIZE<8?12:24)/4 + SIZE*SIZE/8];\ int16_t * const halfV= ((int16_t*)temp) + SIZE*SIZE/2;\ uint8_t * const halfHV= ((uint8_t*)temp);\ + assert((int)temp & 7 == 0);\ put_h264_qpel ## SIZE ## _hv_lowpass_ ## MMX(halfHV, halfV, src, SIZE, SIZE, stride);\ OPNAME ## pixels ## SIZE ## _l2_shift5_ ## MMX(dst, halfV+2, halfHV, stride, SIZE, SIZE);\ }\ @@ -1335,6 +1338,7 @@ uint64_t temp[SIZE*(SIZE<8?12:24)/4 + SIZE*SIZE/8];\ int16_t * const halfV= ((int16_t*)temp) + SIZE*SIZE/2;\ uint8_t * const halfHV= ((uint8_t*)temp);\ + assert((int)temp & 7 == 0);\ put_h264_qpel ## SIZE ## _hv_lowpass_ ## MMX(halfHV, halfV, src, SIZE, SIZE, stride);\ OPNAME ## pixels ## SIZE ## _l2_shift5_ ## MMX(dst, halfV+3, halfHV, stride, SIZE, SIZE);\ }\