glibc/sysdeps
Joe Ramsay 5bc100bd4b AArch64: Improve codegen in users of AdvSIMD log1pf helper
log1pf is quite register-intensive - use fewer registers for the
polynomial, and make various changes to shorten dependency chains in
parent routines.  There is now no spilling with GCC 14.  Accuracy moves
around a little - comments adjusted accordingly but does not require
regen-ulps.

Use the helper in log1pf as well, instead of having separate
implementations.  The more accurate polynomial means special-casing can
be simplified, and the shorter dependency chain avoids the usual dance
around v0, which is otherwise difficult.

There is a small duplication of vectors containing 1.0f (or 0x3f800000) -
GCC is not currently able to efficiently handle values which fit in FMOV
but not MOVI, and are reinterpreted to integer.  There may be potential
for more optimisation if this is fixed.

Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
2024-09-23 15:44:07 +01:00
..
aarch64 AArch64: Improve codegen in users of AdvSIMD log1pf helper 2024-09-23 15:44:07 +01:00
alpha math: Update alpha ulps 2024-07-14 12:44:15 +02:00
arc ARC: Regenerate ULPs 2024-08-11 15:29:56 +02:00
arm arm: Regenerate ULPs 2024-08-07 11:02:03 -03:00
csky elf: Remove HWCAP_IMPORTANT 2024-06-18 10:45:36 +02:00
generic nptl: Fix Race conditions in pthread cancellation [BZ#12683] 2024-08-23 14:27:43 -03:00
gnu sysdeps: Re-flow and sort multiline gnu/Makefile definitions 2024-08-07 11:02:03 -03:00
hppa hppa: Update libm-test-ulps 2024-09-09 09:57:42 -04:00
htl hurd: Fix missing pthread_ compat symbol in libc 2024-08-01 23:58:51 +02:00
hurd hurd: Move internal functions to internal header 2024-03-23 22:43:07 +01:00
i386 i386: Update ulps 2024-09-05 22:25:55 +02:00
ieee754 Convert to autoconf 2.72 (vanilla release, no distribution patches) 2024-06-17 21:15:28 +02:00
loongarch LoongArch: Fix macro redefined warning in tls-desc.S 2024-09-06 15:46:13 +08:00
m68k math: Update m68k ULPs 2024-07-08 21:51:03 +02:00
mach hurd: Avoid file_check_access () RPC for access (F_OK) 2024-09-19 14:18:39 +02:00
microblaze Implement C23 logp1 2024-06-17 13:47:09 +00:00
mips MIPS: Regenerate ULPs 2024-08-08 14:53:53 +02:00
nios2 Convert to autoconf 2.72 (vanilla release, no distribution patches) 2024-06-17 21:15:28 +02:00
nptl nptl: Fix Race conditions in pthread cancellation [BZ#12683] 2024-08-23 14:27:43 -03:00
or1k Implement C23 logp1 2024-06-17 13:47:09 +00:00
posix posix: Sync tempname with gnulib 2024-04-10 14:53:39 -03:00
powerpc powerpc64le: Build new strtod tests with long double ABI flags (bug 32145) 2024-09-05 22:02:23 +02:00
pthread nptl: Fix Race conditions in pthread cancellation [BZ#12683] 2024-08-23 14:27:43 -03:00
riscv RISC-V: Regenerate ULPs 2024-08-08 14:53:55 +02:00
s390 s390x: Update ulps 2024-08-08 13:01:02 +02:00
sh nptl: Fix Race conditions in pthread cancellation [BZ#12683] 2024-08-23 14:27:43 -03:00
sparc sparc: Regenerate ULPs 2024-08-07 11:02:03 -03:00
unix Linux: readdir64_r should not skip d_ino == 0 entries (bug 32126) 2024-09-21 19:32:34 +02:00
wordsize-32 Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
wordsize-64 Update copyright dates with scripts/update-copyrights 2024-01-01 10:53:40 -08:00
x86 x86: Enable non-temporal memset for Hygon processors 2024-08-26 10:01:58 -07:00
x86_64 nptl: Fix Race conditions in pthread cancellation [BZ#12683] 2024-08-23 14:27:43 -03:00