aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/riscv/nptl/pthreaddef.h
diff options
context:
space:
mode:
authorJoseph Myers <josmyers@redhat.com>2025-05-09 15:17:27 +0000
committerJoseph Myers <josmyers@redhat.com>2025-05-09 15:17:27 +0000
commitae312544325724509ca734fcade2a05497f92b26 (patch)
treef9dc5c9f05e26be02cf76ec97cbfec05516b37c1 /sysdeps/riscv/nptl/pthreaddef.h
parentf66cb3c9ebcac80b3200c3aff0e3aed6111547ba (diff)
downloadglibc-master.zip
glibc-master.tar.gz
glibc-master.tar.bz2
Implement C23 compoundnHEADmaster
C23 adds various <math.h> function families originally defined in TS 18661-4. Add the compoundn functions, which compute (1+X) to the power Y for integer Y (and X at least -1). 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. Note that these functions are "compoundn" with a trailing "n", *not* "compound" (CORE-MATH has the wrong name, for example). As with pown, 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 (I haven't tested or benchmarked the CORE-MATH implementation for binary32); this is one of the more complicated and less efficient functions to implement in a type-generic way. As with exp2m1 and exp10m1, this showed up places where the powerpc64le IFUNC setup is not as self-contained as one might hope (in this case, without the changes specific to powerpc64le, there were undefined references to __GI___expf128). Tested for x86_64 and x86, and with build-many-glibcs.py.
Diffstat (limited to 'sysdeps/riscv/nptl/pthreaddef.h')
0 files changed, 0 insertions, 0 deletions