swscale/arm/yuv2rgb: disable neon if accurate_rnd is enabled
authorMatthieu Bouron <matthieu.bouron@stupeflix.com>
Fri, 18 Dec 2015 13:24:52 +0000 (14:24 +0100)
committerMatthieu Bouron <matthieu.bouron@stupeflix.com>
Sat, 19 Dec 2015 21:09:28 +0000 (22:09 +0100)
This disables the 32bit precision neon code path in favor of the
default C one and avoids breaking fate.

libswscale/arm/swscale_unscaled.c

index e694ef4..4c12122 100644 (file)
@@ -100,7 +100,6 @@ DECLARE_FF_NVX_TO_RGBX_FUNCS(nvx, bgra, precision)
 
 #define DECLARE_FF_NVX_TO_ALL_RGBX_ALL_PRECISION_FUNCS(nvx)                                 \
 DECLARE_FF_NVX_TO_ALL_RGBX_FUNCS(nvx, 16)                                                   \
-DECLARE_FF_NVX_TO_ALL_RGBX_FUNCS(nvx, 32)                                                   \
 
 DECLARE_FF_NVX_TO_ALL_RGBX_ALL_PRECISION_FUNCS(nv12)
 DECLARE_FF_NVX_TO_ALL_RGBX_ALL_PRECISION_FUNCS(nv21)
@@ -113,9 +112,9 @@ DECLARE_FF_NVX_TO_ALL_RGBX_ALL_PRECISION_FUNCS(nv21)
     if (c->srcFormat == AV_PIX_FMT_##IFMT                                                   \
         && c->dstFormat == AV_PIX_FMT_##OFMT                                                \
         && !(c->srcH & 1)                                                                   \
-        && !(c->srcW & 15)) {                                                               \
-        c->swscale = (accurate_rnd) ? ifmt##_to_##ofmt##_neon_wrapper_32 :                  \
-                                      ifmt##_to_##ofmt##_neon_wrapper_16 ;                  \
+        && !(c->srcW & 15)                                                                  \
+        && !accurate_rnd) {                                                                 \
+        c->swscale = ifmt##_to_##ofmt##_neon_wrapper_16;                                    \
     }                                                                                       \
 } while (0)