swr/x86: 16bit integer mix functions need SSE2 not SSE
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 7 Jul 2012 18:52:34 +0000 (20:52 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 7 Jul 2012 18:52:34 +0000 (20:52 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libswresample/x86/rematrix.asm
libswresample/x86/swresample_x86.c

index ee50e20..a11872f 100644 (file)
@@ -236,6 +236,8 @@ MIX2_FLT u
 MIX2_FLT a
 MIX1_FLT u
 MIX1_FLT a
+
+INIT_XMM sse2
 MIX1_INT16 u
 MIX1_INT16 a
 MIX2_INT16 u
index 71806c1..74e05e6 100644 (file)
@@ -146,7 +146,7 @@ mix_2_1_func_type ff_mix_2_1_a_## type ## _ ## simd;
 D(float, sse)
 D(float, avx)
 D(int16, mmx)
-D(int16, sse)
+D(int16, sse2)
 
 
 void swri_rematrix_init_x86(struct SwrContext *s){
@@ -164,9 +164,9 @@ void swri_rematrix_init_x86(struct SwrContext *s){
             s->mix_1_1_simd = ff_mix_1_1_a_int16_mmx;
             s->mix_2_1_simd = ff_mix_2_1_a_int16_mmx;
         }
-        if(mm_flags & AV_CPU_FLAG_SSE) {
-            s->mix_1_1_simd = ff_mix_1_1_a_int16_sse;
-            s->mix_2_1_simd = ff_mix_2_1_a_int16_sse;
+        if(mm_flags & AV_CPU_FLAG_SSE2) {
+            s->mix_1_1_simd = ff_mix_1_1_a_int16_sse2;
+            s->mix_2_1_simd = ff_mix_2_1_a_int16_sse2;
         }
         s->native_simd_matrix = av_mallocz(2 * num * sizeof(int16_t));
         for(i=0; i<nb_out; i++){