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

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                 46.4996        41.6126        10.51%
x86_64v2               46.7551        38.8235        16.96%
x86_64v3               42.6235        33.7603        20.79%
aarch64 (Neoverse)     17.4161        14.3604        17.55%
power8                 10.7347         9.0193        15.98%
power10                10.6420         9.0362        15.09%

reciprocal-throughput   master        patched   improvement
x86_64                 24.7208        16.5544        33.03%
x86_64v2               24.2177        14.8938        38.50%
x86_64v3               20.5617        10.5452        48.71%
aarch64 (Neoverse)     13.4827        7.17613        46.78%
power8                 6.46134        3.56089        44.89%
power10                5.79007        3.49544        39.63%

Reviewed-by: DJ Delorie <dj@redhat.com>
2025-02-12 16:31:57 -03:00
..
64 Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
fpu math: Use asinpif 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
multiarch Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
nptl x86-64: Cast __rseq_offset to long long int [BZ #32543] 2025-01-12 07:08:27 +08:00
sys Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
x32 elf: Always define TLS_TP_OFFSET 2025-01-09 19:30:44 +01:00
Implies
Makefile elf: Compile test modules with -fsemantic-interposition 2024-12-22 13:15:43 +08:00
Versions
____longjmp_chk.S
__longjmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
_mcount.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
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
check-cet.awk Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
configure Update copyright in generated files by running "make" 2025-01-01 11:22:09 -08:00
configure.ac Check if -mamx-tile works for testing 2024-12-22 06:07:17 +08: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-cache.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-cet.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-dtprocnum.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-hwcaps-subdirs.c 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.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-plt-rewrite.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-procruntime.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-runtime.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-tls.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08: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-save.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dl-trampoline-state.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
dl-trampoline.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
feature-control.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
ifuncmain8.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
ifuncmod8.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
isa-default-impl.h 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
l10nflist.c
ldsodefs.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
libc-start.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
link-defines.sym
link_map.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
locale-defines.sym
localplt.data
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
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
memcmpeq.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memcpy.S
memcpy_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memmove.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
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
memrchr.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 Update copyright in generated files by running "make" 2025-01-01 11:22:09 -08:00
preconfigure.ac
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
rtld-offsets.sym
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
strcasecmp.S
strcasecmp_l-nonascii.c
strcasecmp_l.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-isa-default-impl.h 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
strcmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strcpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strcspn-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strcspn.c 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
strncase.S
strncase_l-nonascii.c
strncase_l.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strncat.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strncmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strncpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strnlen.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strpbrk-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strpbrk.c 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-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
strspn.c 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
sysdep.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tls_get_addr.S 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
tst-audit4-aux.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-audit4.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-audit5.c
tst-audit6.c
tst-audit7.c
tst-audit10-aux.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-audit10.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-auditmod3a.c
tst-auditmod3b.c
tst-auditmod4a.c
tst-auditmod4b.c
tst-auditmod5a.c
tst-auditmod5b.c
tst-auditmod6a.c
tst-auditmod6b.c
tst-auditmod6c.c
tst-auditmod7a.c
tst-auditmod7b.c
tst-auditmod10a.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-auditmod10b.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-avx-aux.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-avx.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-avx512-aux.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-avx512.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-avx512mod.c
tst-avxmod.c
tst-cet-legacy-1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-1a.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-2a.c
tst-cet-legacy-3.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-4.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-4a.c
tst-cet-legacy-4b.c
tst-cet-legacy-4c.c
tst-cet-legacy-5.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-5a.c
tst-cet-legacy-5b.c
tst-cet-legacy-6.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-6a.c
tst-cet-legacy-6b.c
tst-cet-legacy-7.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-8.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-9-static.c
tst-cet-legacy-9.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-10-static.c
tst-cet-legacy-10.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-10a-static.c cet: Drop '#pragma GCC target' in tst-cet-legacy-10a[-static].c 2024-12-21 06:16:58 +08:00
tst-cet-legacy-10a.c cet: Drop '#pragma GCC target' in tst-cet-legacy-10a[-static].c 2024-12-21 06:16:58 +08:00
tst-cet-legacy-mod-1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-mod-2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-mod-4.c
tst-cet-legacy-mod-5.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-mod-5a.c
tst-cet-legacy-mod-5b.c
tst-cet-legacy-mod-5c.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-mod-6.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-mod-6a.c
tst-cet-legacy-mod-6b.c
tst-cet-legacy-mod-6c.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-cet-legacy-mod-6d.c
tst-glibc-hwcaps.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-gnu2-tls2mod1.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-platform-1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-platformmod-1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-platformmod-2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-plt-rewrite1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-plt-rewrite2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-plt-rewritemod1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-plt-rewritemod2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-quad1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-quad1pie.c
tst-quad2.c
tst-quad2pie.c
tst-quadmod1.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-quadmod1pie.S
tst-quadmod2.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-quadmod2pie.S
tst-rsi-strlen.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-rsi-wcslen.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1-extra.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1a-static.c
tst-shstk-legacy-1a.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1b-static.c
tst-shstk-legacy-1b.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1c-static.c
tst-shstk-legacy-1c.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1d-static.c
tst-shstk-legacy-1d.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1e-static.c
tst-shstk-legacy-1e-static.sh Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1e.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1e.sh Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1f.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1g.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-1g.sh Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-shstk-legacy-mod-1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-split-dynreloc.c
tst-split-dynreloc.lds
tst-sse.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-ssemod.c
varshift.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcpcpy-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcpcpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcpncpy-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcpncpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcscat-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcscat.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcschr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcscmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcscpy-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcscpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcslen.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsncat-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsncat.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsncmp-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsncmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsncpy-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsncpy.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsnlen-generic.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsnlen.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wcsrchr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wmemchr.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wmemcmp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wmemset.S
wmemset_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
wordcopy.c
x86-lp_size.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00