glibc/sysdeps/mips
Adhemerval Zanella baa495f231 math: Use erfcf from CORE-MATH
The CORE-MATH implementation is correctly rounded (for any rounding mode)
and shows better performance to the generic erfcf.

The code was adapted to glibc style and to use the definition of
math_config.h.

Benchtest on x64_64 (Ryzen 9 5900X, gcc 14.2.1), aarch64 (M1,
gcc 13.2.1), and powerpc (POWER10, gcc 13.2.1):

latency                       master       patched  improvement
x86_64                       98.8796       66.2142       33.04%
x86_64v2                     98.9617       67.4221       31.87%
x86_64v3                     87.4161       53.1754       39.17%
aarch64                      33.8336       22.0781       34.75%
power10                      21.1750       13.5864       35.84%
powerpc                      21.4694       13.8149       35.65%

reciprocal-throughput         master       patched  improvement
x86_64                       48.5620       27.6731       43.01%
x86_64v2                     47.9497       28.3804       40.81%
x86_64v3                     42.0255       18.1355       56.85%
aarch64                      24.3938       13.4041       45.05%
power10                      10.4919        6.1881       41.02%
powerpc                       11.763       6.76468       42.49%

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-11-22 10:52:27 -03:00
..
bits login: structs utmp, utmpx, lastlog _TIME_BITS independence (bug 30701) 2024-04-19 14:38:17 +02:00
fpu MIPSr6/math: Use builtin fma and fmaf 2024-07-01 14:52:30 -03:00
ieee754 Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
include/sys Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
mips32 math: Use erfcf from CORE-MATH 2024-11-22 10:52:27 -03:00
mips64 math: Use erfcf from CORE-MATH 2024-11-22 10:52:27 -03:00
nofpu
nptl Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
sys Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
Implies
Makefile tests: XFAIL audit tests failing on all mips configurations, bug 29404 2024-07-12 18:49:42 +02:00
__longjmp.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
abort-instr.h
add_n.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
addmul_1.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
atomic-machine.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
bsd-_setjmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
bsd-setjmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
configure Convert to autoconf 2.72 (vanilla release, no distribution patches) 2024-06-17 21:15:28 +02:00
configure.ac
dl-debug.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-dtprocnum.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-machine-reject-phdr.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-machine-rel.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-machine.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-procinfo.c elf: Remove platform strings in dl-procinfo.c 2024-06-18 10:45:36 +02:00
dl-procinfo.h elf: Remove HWCAP_IMPORTANT 2024-06-18 10:45:36 +02:00
dl-r_debug.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-relocate-ld.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-tls.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
dl-trampoline.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
elf-initfini.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
elf_machine_sym_no_match.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fpregdef.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
fpu_control.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
gccframe.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
ldbl-classify-compat.h
ldsodefs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
libc-tls.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
linkmap.h
localplt.data
lshift.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
machine-gmon.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
math-tests-snan-payload.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
math-use-builtins-ffs.h mips: Use builtins for ffs and ffsll 2024-02-14 12:20:49 -03:00
memcpy.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memset.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
mul_1.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
nan-high-order-bit.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
preconfigure configure: Use autoconf 2.71 2023-07-17 10:08:10 -04:00
preconfigure.ac
regdef.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
rshift.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
setjmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
setjmp_aux.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
sgidefs.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
stackinfo.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
start.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
strcmp.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
sub_n.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
submul_1.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tininess.h
tst-abi-fp32mod.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-abi-fp64amod.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-abi-fp64mod.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-abi-fpxxmod.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-abi-fpxxomod.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-abi-interlink.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-audit.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-mode-switch-1.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-mode-switch-2.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-mode-switch-3.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-undefined-weak-lib.S Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
tst-undefined-weak.c Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
unwind-arch.h Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
utmp-size.h login: Check default sizes of structs utmp, utmpx, lastlog 2024-04-19 14:38:17 +02:00