aboutsummaryrefslogtreecommitdiff
path: root/pl/math/test/mathbench_funcs.h
diff options
context:
space:
mode:
authorJoe Ramsay <Joe.Ramsay@arm.com>2022-07-12 12:22:06 +0100
committerJoe Ramsay <joe.ramsay@arm.com>2022-07-12 12:22:06 +0100
commitd082d55feea607f231358cc49a958da419fac537 (patch)
treef0ff97951132f8e4af9cf917b35c072d0d03c6d9 /pl/math/test/mathbench_funcs.h
parentea3ad6c20ddd99aa1ee3f86e8f4bc5fe76cee35c (diff)
downloadarm-optimized-routines-d082d55feea607f231358cc49a958da419fac537.tar.gz
pl/math: Add scalar asinh
The new routine uses a similar approach to asinhf, using a polynomial only in the region where either returning x or calculating the result directly is not sufficiently precise. Worst-case error is about 2 ULP, close to 1. There are 4 intervals with slightly different error behaviour, as follows: Interval Worst-case accuracy (ulp) |x| < 2^-26 0.0 |x| < 1 1.5 |x| < ~sqrt(DBL_MAX) 2.0 |x| < infinity 1.0 log has been copied from the main math directory so that it can be used in asinh. The only modifications to the relevant files are to remove aliases and rename log itself to an internal 'helper' name.
Diffstat (limited to 'pl/math/test/mathbench_funcs.h')
-rw-r--r--pl/math/test/mathbench_funcs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/pl/math/test/mathbench_funcs.h b/pl/math/test/mathbench_funcs.h
index 45ee627..9fc0e32 100644
--- a/pl/math/test/mathbench_funcs.h
+++ b/pl/math/test/mathbench_funcs.h
@@ -12,6 +12,7 @@ F (erfcf, -4.0, 10.0)
F (erff, -4.0, 4.0)
F (log10f, 0.01, 11.1)
+D (asinh, -10.0, 10.0)
D (atan, -10.0, 10.0)
{"atan2", 'd', 0, -10.0, 10.0, {.d = atan2_wrap}},
D (erf, -6,6)