aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2025-08-08 13:59:33 +0300
committerKacper Michajłow <kasper93@gmail.com>2025-08-10 02:27:44 +0000
commit8e4c904c8e30c68ea6c7da3740139bf2f4ffa907 (patch)
tree03f07d3af256f516311ae5f5538da7716a9f3cc6
parent0400e05a1a2835bf8a6589a0d7d5eb2625d618a9 (diff)
downloadffmpeg-8e4c904c8e30c68ea6c7da3740139bf2f4ffa907.tar.gz
checkasm: ac3dsp: Increase the float tolerance for sum_square_butterfly_float
Accept up to 13 ULP difference. This fixes running "checkasm --test=ac3dsp 3044836819" on ARM. Depending on how the SIMD implementations aggregate numbers, larger/smaller values might not end up accumulated in exactly the same way; the current NEON implementation for ARM aggregates into vectors of 2 elements. If it would aggregate into vectors of 4 elements instead, like the AArch64 version does, this particular case would end up with a smaller difference.
-rw-r--r--tests/checkasm/ac3dsp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/checkasm/ac3dsp.c b/tests/checkasm/ac3dsp.c
index a8e96d793f..97732112a5 100644
--- a/tests/checkasm/ac3dsp.c
+++ b/tests/checkasm/ac3dsp.c
@@ -181,7 +181,7 @@ static void check_ac3_sum_square_butterfly_float(AC3DSPContext *c) {
call_ref(v1, lt, rt, ELEMS);
call_new(v2, lt, rt, ELEMS);
- if (!float_near_ulp_array(v1, v2, 11, 4))
+ if (!float_near_ulp_array(v1, v2, 13, 4))
fail();
bench_new(v2, lt, rt, ELEMS);