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

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                  54.8281        42.9070        21.74%
x86_64v2                54.1717        42.7497        21.08%
x86_64v3                49.3552        34.1512        30.81%
aarch64 (Neoverse)      17.9395        14.3733        19.88%
power8                  20.3110         8.8609        56.37%
power10                 11.3113        8.84067        21.84%

reciprocal-throughput    master        patched   improvement
x86_64                  21.2301        14.4803        31.79%
x86_64v2                20.6858        13.9506        32.56%
x86_64v3                16.1944        11.3377        29.99%
aarch64 (Neoverse)      11.4474        7.13282        37.69%
power8                  10.6916        3.57547        66.56%
power10                 4.64269        3.54145        23.72%

Reviewed-by: DJ Delorie <dj@redhat.com>
2025-02-12 16:31:57 -03:00
..
fpu math: Use acospif from CORE-MATH 2025-02-12 16:31:57 -03:00
htl Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
i586 Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
i686 math: Use acospif from CORE-MATH 2025-02-12 16:31:57 -03:00
i786
nptl nptl: Introduce <rseq-access.h> for RSEQ_* accessors 2025-01-10 20:20:17 +00:00
sys Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
Implies
Makefile
Versions
____longjmp_chk.S
__longjmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
abort-instr.h
add_n.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
addmul_1.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
asm-syntax.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
backtrace.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
bsd-_setjmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
bsd-setjmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
configure Convert to autoconf 2.72 (vanilla release, no distribution patches) 2024-06-17 21:15:28 +02:00
configure.ac i386: Fail if configured with --enable-cet 2024-01-09 13:55:51 -03:00
crti.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
crtn.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-fixup-attribute.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-irel.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-machine-rel.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-machine.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-procinfo.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-tls.h Add missing include guards to <dl-tls.h> 2025-01-10 19:02:47 +01:00
dl-tlsdesc-dynamic.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-tlsdesc.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-tlsdesc.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
gccframe.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
i386-mcount.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
isa.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
link-defines.sym
lshift.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
machine-gmon.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
malloc-alignment.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
math-use-builtins-ffs.h string: Use builtins for ffs and ffsll 2024-02-01 09:31:33 -03:00
memchr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memcmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memcopy.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memcpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memcpy_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memmove.S
memmove_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mempcpy.S
mempcpy_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memset.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memset_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mp_clz_tab.c
mul_1.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
preconfigure
pthread_spin_trylock.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
rawmemchr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
rshift.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
setfpucw.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
setjmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
stackguard-macros.h
stackinfo.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
start.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
stpcpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
stpncpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strcat.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strchr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strchrnul.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strcspn.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
string-inlines.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
string-opthr.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strlen.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strlen.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strpbrk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strrchr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strspn.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
sub_n.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
submul_1.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
symbol-hacks.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
sysdep.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tlsdesc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tlsdesc.sym
tst-audit.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-audit3.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-audit3.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-auditmod3a.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-auditmod3b.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-ld-sse-use.sh Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
unwind-arch.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00