aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/m68k/m680x0
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-10-21 10:51:09 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-12-18 17:24:43 -0300
commit673e6fe11083760f77001285790b1117b09b2283 (patch)
tree6363f82c3c251af88c7b84a930586b46b961737e /sysdeps/m68k/m680x0
parent66fa7ad437affc64b3a81332d750e6f998b2e343 (diff)
downloadglibc-673e6fe11083760f77001285790b1117b09b2283.zip
glibc-673e6fe11083760f77001285790b1117b09b2283.tar.gz
glibc-673e6fe11083760f77001285790b1117b09b2283.tar.bz2
math: Use acoshf from CORE-MATH
The CORE-MATH implementation is correctly rounded (for any rounding mode) and shows slight better performance to the generic acoshf. The code was adapted to glibc style and to use the definition of math_config.h (to handle errno, overflow, and underflow). Benchtest on x64_64 (Ryzen 9 5900X, gcc 14.2.1), aarch64 (Neoverse-N1, gcc 13.3.1), and powerpc (POWER10, gcc 13.2.1): Latency master patched improvement x86_64 61.2471 58.7742 4.04% x86_64-v2 62.6519 59.0523 5.75% x86_64-v3 58.7408 50.1393 14.64% aarch64 24.8580 21.3317 14.19% power10 17.0469 13.1345 22.95% reciprocal-throughput master patched improvement x86_64 16.1618 15.1864 6.04% x86_64-v2 15.7729 14.7563 6.45% x86_64-v3 14.1669 11.9568 15.60% aarch64 10.911 9.5486 12.49% power10 6.38196 5.06734 20.60% Signed-off-by: Alexei Sibidanov <sibid@uvic.ca> Signed-off-by: Paul Zimmermann <Paul.Zimmermann@inria.fr> Signed-off-by: Adhemerval Zanella <adhemerval.zanella@linaro.org> Reviewed-by: DJ Delorie <dj@redhat.com>
Diffstat (limited to 'sysdeps/m68k/m680x0')
-rw-r--r--sysdeps/m68k/m680x0/fpu/libm-test-ulps4
1 files changed, 0 insertions, 4 deletions
diff --git a/sysdeps/m68k/m680x0/fpu/libm-test-ulps b/sysdeps/m68k/m680x0/fpu/libm-test-ulps
index 50080f4..7301999 100644
--- a/sysdeps/m68k/m680x0/fpu/libm-test-ulps
+++ b/sysdeps/m68k/m680x0/fpu/libm-test-ulps
@@ -3,22 +3,18 @@
# Maximal error of functions:
Function: "acosh":
double: 1
-float: 1
ldouble: 1
Function: "acosh_downward":
double: 2
-float: 1
ldouble: 1
Function: "acosh_towardzero":
double: 2
-float: 1
ldouble: 1
Function: "acosh_upward":
double: 2
-float: 1
ldouble: 1
Function: "asin":