mirror of git://sourceware.org/git/glibc.git
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. |
||
|---|---|---|
| .. | ||
| bits | ||
| mips32 | ||
| mips64 | ||
| sys | ||
| Implies | ||
| Makefile | ||
| Versions | ||
| ____longjmp_chk.c | ||
| _test_and_set.c | ||
| clone.S | ||
| clone3.S | ||
| configure | ||
| configure.ac | ||
| dl-cache.h | ||
| errlist-compat-data.h | ||
| fxstat.c | ||
| getcontext.S | ||
| getrlimit64.c | ||
| kernel-features.h | ||
| kernel_rt_sigframe.h | ||
| kernel_sigaction.h | ||
| kernel_stat.h | ||
| kernel_termios.h | ||
| ldsodefs.h | ||
| libc-abis | ||
| lxstat.c | ||
| makecontext.S | ||
| mmap_info.h | ||
| readelflib.c | ||
| setcontext.S | ||
| setrlimit64.c | ||
| shlib-versions | ||
| sigcontextinfo.h | ||
| socket-constants-time64.h | ||
| struct_kernel_msqid64_ds.h | ||
| struct_kernel_semid64_ds.h | ||
| struct_kernel_shmid64_ds.h | ||
| swapcontext.S | ||
| syscalls.list | ||
| sysdep.h | ||
| ucontext_i.sym | ||
| ustat.c | ||
| vfork.S | ||
| xstat.c | ||
| xstatconv.c | ||
| xstatver.h | ||