h264_qpel: put cpuflags checks back.
authorMichael Niedermayer <michaelni@gmx.at>
Thu, 24 Jan 2013 21:14:39 +0000 (22:14 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 24 Jan 2013 21:14:39 +0000 (22:14 +0100)
These where lost when libav moved the code out of dsputil

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/x86/h264_qpel.c

index 2033763..3cf8f42 100644 (file)
@@ -534,6 +534,8 @@ void ff_h264qpel_init_x86(H264QpelContext *c, int bit_depth)
     int mm_flags = av_get_cpu_flags();
 
 #if HAVE_MMXEXT_EXTERNAL
+    if (!(mm_flags & AV_CPU_FLAG_MMXEXT))
+        return;
     if (!high_bit_depth) {
         SET_QPEL_FUNCS(put_h264_qpel, 0, 16, mmxext, );
         SET_QPEL_FUNCS(put_h264_qpel, 1,  8, mmxext, );
@@ -554,6 +556,8 @@ void ff_h264qpel_init_x86(H264QpelContext *c, int bit_depth)
 #endif
 
 #if HAVE_SSE2_EXTERNAL
+    if (!(mm_flags & AV_CPU_FLAG_SSE2))
+        return;
     if (!(mm_flags & AV_CPU_FLAG_SSE2SLOW) && !high_bit_depth) {
         // these functions are slower than mmx on AMD, but faster on Intel
         H264_QPEL_FUNCS(0, 0, sse2);
@@ -586,6 +590,8 @@ void ff_h264qpel_init_x86(H264QpelContext *c, int bit_depth)
 #endif
 
 #if HAVE_SSSE3_EXTERNAL
+    if (!(mm_flags & AV_CPU_FLAG_SSSE3))
+        return;
     if (!high_bit_depth) {
         H264_QPEL_FUNCS(1, 0, ssse3);
         H264_QPEL_FUNCS(1, 1, ssse3);