glibc/sysdeps
Paul E. Murphy 33fc34521d powerpc64le: ifunc select *f128 routines in multiarch mode
Programatically generate simple wrappers for interesting libm *f128
objects.  Selected functions are transcendental functions or
those with trivial compiler builtins.  This can result in a 2-3x
speedup (e.g logf128 and expf128).

A second set of implementation files are generated which include
the first implementation encountered along the search path.  This
usually works, except when a wrapper is overriden and makefile
search order slightly diverges from include order.  Likewise,
wrapper object files are created for each generated file.  These
hold the ifunc selection routines which export ABI.

Next, several shared headers are intercepted to control renaming of
asm function redirects are used first, and sometimes macro renames
if the former is impractical.

Notably, if the request machine supports hardware IEEE128 (i.e POWER9
and newer) this ifunc machinery is disabled.  Likewise existing
ifunc support for float128 is consolidated into this (e.g sqrtf128
and fmaf128).

Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
2020-11-30 09:56:14 -06:00
..
aarch64 nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
alpha nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
arc nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
arm nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
csky nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
generic elf: Introduce enum opt_format in the ldconfig implementation 2020-11-26 18:26:52 +01:00
gnu
hppa nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
htl hurd: Remove some remnants of cthreads 2020-11-15 13:16:03 +01:00
hurd hurd: Remove some remnants of cthreads 2020-11-15 13:16:03 +01:00
i386 nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
ia64 nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
ieee754 Remove tls.h inclusion from internal errno.h 2020-11-13 12:59:19 -03:00
m68k nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
mach hurd: Enable using ifunc 2020-11-16 21:15:20 +00:00
microblaze nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
mips nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
nios2 nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
nptl y2038: Convert aio_suspend to support 64 bit time 2020-11-30 14:08:44 +01:00
posix linux: Move posix dir implementations to Linux 2020-10-16 14:19:23 -03:00
powerpc powerpc64le: ifunc select *f128 routines in multiarch mode 2020-11-30 09:56:14 -06:00
pthread y2038: Convert aio_suspend to support 64 bit time 2020-11-30 14:08:44 +01:00
riscv nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
s390 nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
sh sh: Add sh4 fpu Implies folder 2020-11-27 09:29:35 -03:00
sparc nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00
unix sh: Add sh4 fpu Implies folder 2020-11-27 09:29:35 -03:00
wordsize-32
wordsize-64
x86 x86: Remove UP macro. Define LOCK_PREFIX unconditionally. 2020-11-13 15:20:03 +01:00
x86_64 nptl: Move stack list variables into _rtld_global 2020-11-16 19:33:30 +01:00