comparison x86/dsputilenc_mmx.c @ 12505:b2d560458a72 libavcodec

x86: disable SSE functions using stack when stack is not aligned This fixes crashes with ICC 10.1.
author mru
date Tue, 21 Sep 2010 17:57:21 +0000
parents bc17df45daa3
children
comparison
equal deleted inserted replaced
12504:036603a63c51 12505:b2d560458a72
1158 } 1158 }
1159 1159
1160 if(mm_flags & AV_CPU_FLAG_SSE2){ 1160 if(mm_flags & AV_CPU_FLAG_SSE2){
1161 c->get_pixels = get_pixels_sse2; 1161 c->get_pixels = get_pixels_sse2;
1162 c->sum_abs_dctelem= sum_abs_dctelem_sse2; 1162 c->sum_abs_dctelem= sum_abs_dctelem_sse2;
1163 #if HAVE_YASM 1163 #if HAVE_YASM && HAVE_ALIGNED_STACK
1164 c->hadamard8_diff[0]= ff_hadamard8_diff16_sse2; 1164 c->hadamard8_diff[0]= ff_hadamard8_diff16_sse2;
1165 c->hadamard8_diff[1]= ff_hadamard8_diff_sse2; 1165 c->hadamard8_diff[1]= ff_hadamard8_diff_sse2;
1166 #endif 1166 #endif
1167 } 1167 }
1168 1168
1175 if(!(avctx->flags & CODEC_FLAG_BITEXACT)){ 1175 if(!(avctx->flags & CODEC_FLAG_BITEXACT)){
1176 c->try_8x8basis= try_8x8basis_ssse3; 1176 c->try_8x8basis= try_8x8basis_ssse3;
1177 } 1177 }
1178 c->add_8x8basis= add_8x8basis_ssse3; 1178 c->add_8x8basis= add_8x8basis_ssse3;
1179 c->sum_abs_dctelem= sum_abs_dctelem_ssse3; 1179 c->sum_abs_dctelem= sum_abs_dctelem_ssse3;
1180 #if HAVE_YASM 1180 #if HAVE_YASM && HAVE_ALIGNED_STACK
1181 c->hadamard8_diff[0]= ff_hadamard8_diff16_ssse3; 1181 c->hadamard8_diff[0]= ff_hadamard8_diff16_ssse3;
1182 c->hadamard8_diff[1]= ff_hadamard8_diff_ssse3; 1182 c->hadamard8_diff[1]= ff_hadamard8_diff_ssse3;
1183 #endif 1183 #endif
1184 } 1184 }
1185 #endif 1185 #endif