Mercurial > libavcodec.hg
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 |