glibc/sysdeps/riscv/rvd
Adhemerval Zanella 673e6fe110 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>
2024-12-18 17:24:43 -03:00
..
fix-float-double-convert-nan.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
libm-test-ulps math: Use acoshf from CORE-MATH 2024-12-18 17:24:43 -03:00
libm-test-ulps-name riscv: Consolidate the libm-test-ulps 2022-09-21 14:37:13 -04:00
math-use-builtins-fma.h RISC-V: Use builtin for fma and fmaf 2024-11-25 16:45:59 -03:00
math-use-builtins-sqrt.h riscv: Use sqrt{f} builtin 2020-06-22 11:09:50 -03:00
s_finite.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_fmax.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_fmin.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_fpclassify.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_isinf.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_isnan.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_issignaling.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_lrint.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
s_lround.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00