checkasm: sbrdsp: Fix a spurious test failure by calculating a better epsilon for...
authorMartin Storsjö <martin@martin.st>
Wed, 5 Feb 2020 20:18:19 +0000 (22:18 +0200)
committerMartin Storsjö <martin@martin.st>
Sat, 8 Feb 2020 21:00:21 +0000 (23:00 +0200)
Signed-off-by: Martin Storsjö <martin@martin.st>
tests/checkasm/sbrdsp.c

index 558f452..516b9f0 100644 (file)
@@ -17,6 +17,7 @@
  */
 
 #include "libavcodec/sbrdsp.h"
+#include <float.h>
 
 #include "checkasm.h"
 
@@ -51,13 +52,14 @@ static void test_sum_square(void)
     INTFLOAT res0;
     INTFLOAT res1;
     LOCAL_ALIGNED_16(INTFLOAT, src, [256], [2]);
+    double t = 4 * 256;
 
     declare_func_float(INTFLOAT, INTFLOAT (*x)[2], int n);
 
     randomize((INTFLOAT *)src, 256 * 2);
     res0 = call_ref(src, 256);
     res1 = call_new(src, 256);
-    if (!float_near_abs_eps(res0, res1, EPS))
+    if (!float_near_abs_eps(res0, res1, t * 2 * FLT_EPSILON))
         fail();
     bench_new(src, 256);
 }