glibc/sysdeps/unix/sysv/linux/arm
Joseph Myers 06caf53adf Implement C23 rootn.
C23 adds various <math.h> function families originally defined in TS
18661-4.  Add the rootn functions, which compute the Yth root of X for
integer Y (with a domain error if Y is 0, even if X is a NaN).  The
integer exponent has type long long int in C23; it was intmax_t in TS
18661-4, and as with other interfaces changed after their initial
appearance in the TS, I don't think we need to support the original
version of the interface.

As with pown and compoundn, I strongly encourage searching for worst
cases for ulps error for these implementations (necessarily
non-exhaustively, given the size of the input space).  I also expect a
custom implementation for a given format could be much faster as well
as more accurate, although the implementation is simpler than those
for pown and compoundn.

This completes adding to glibc those TS 18661-4 functions (ignoring
DFP) that are included in C23.  See
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118592 regarding the C23
mathematical functions (not just the TS 18661-4 ones) missing built-in
functions in GCC, where such functions might usefully be added.

Tested for x86_64 and x86, and with build-many-glibcs.py.
2025-05-14 10:51:46 +00:00
..
be Implement C23 rootn. 2025-05-14 10:51:46 +00:00
bits Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
le Implement C23 rootn. 2025-05-14 10:51:46 +00:00
sys Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
Implies
Makefile elf: Second ld.so relocation only if libc.so has been loaded 2025-01-07 09:19:01 +01:00
Versions Linux: Move wordsize-32 Version to default 2023-02-20 10:19:25 -03:00
____longjmp_chk.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
aeabi_read_tp.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
arch-syscall.h Update syscall lists for Linux 6.13 2025-03-12 12:51:54 +00:00
arm-features.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
atomic-machine.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
c++-types.data
clone.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
clone3.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-machine.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
fixup-asm-unistd.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
getcontext.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
ioperm.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
kernel-features.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
kernel_stat.h
ldsodefs.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
libc-do-syscall.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
libc_sigaction.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
localplt.data arm: Remove ld.so __tls_get_addr plt usage 2024-04-04 17:03:32 -03:00
makecontext.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
profil-counter.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
readelflib.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
setcontext.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
shlib-versions
sigcontextinfo.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
sigrestorer.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
single-thread.h Replace __libc_multiple_threads with __libc_single_threaded 2022-07-05 10:14:47 -03:00
swapcontext.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
syscall.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
syscall_cancel.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
syscalls.list
sysdep.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
time64-compat.h
tls.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
ucontext_i.sym
vfork.S Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
xstatver.h Linux: make generic xstatver.h the default one 2022-12-07 14:40:36 -03:00