glibc/sysdeps/loongarch
caiyinyu a53451559d LoongArch: Add glibc.cpu.hwcap support.
Key Points:
1. On lasx & lsx platforms, We must use _dl_runtime_{profile, resolve}_{lsx, lasx}
   to save vector registers.
2. Via "tunables", users can choose str/mem_{lasx,lsx,unaligned} functions with
   `export GLIBC_TUNABLES=glibc.cpu.hwcaps=LASX,...`.
   Note: glibc.cpu.hwcaps doesn't affect _dl_runtime_{profile, resolve}_{lsx, lasx}
   selection.

Usage Notes:
1. Only valid inputs: LASX, LSX, UAL. Case-sensitive, comma-separated, no spaces.
2. Example: `export GLIBC_TUNABLES=glibc.cpu.hwcaps=LASX,UAL` turns on LASX & UAL.
   Unmentioned features turn off. With default ifunc: lasx > lsx > unaligned >
   aligned > generic, effect is: lasx > unaligned > aligned > generic; lsx off.
3. Incorrect GLIBC_TUNABLES settings will show error messages.
   For example: On lsx platforms, you cannot enable lasx features. If you do
   that, you will get error messages.
4. Valid input examples:
   - GLIBC_TUNABLES=glibc.cpu.hwcaps=LASX: lasx > aligned > generic.
   - GLIBC_TUNABLES=glibc.cpu.hwcaps=LSX,UAL: lsx > unaligned > aligned > generic.
   - GLIBC_TUNABLES=glibc.cpu.hwcaps=LASX,UAL,LASX,UAL,LSX,LASX,UAL: Repetitions
     allowed but not recommended. Results in: lasx > lsx > unaligned > aligned >
     generic.
2023-09-19 09:11:49 +08:00
..
bits LoongArch: Add lasx/lsx support for _dl_runtime_profile. 2023-09-15 09:07:42 +08:00
fpu Fix misspellings in sysdeps/ -- BZ 25337 2023-05-30 23:02:29 +00:00
lp64 LoongArch: Change to put magic number to .rodata section 2023-09-15 09:07:47 +08:00
nofpu Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
nptl Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sys Loongarch: Add ifunc support and add different versions of strlen 2023-08-14 09:47:09 +08:00
__longjmp.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
abort-instr.h LoongArch: Linux Syscall Interface 2022-07-26 12:35:12 -03:00
bsd-_setjmp.c
bsd-setjmp.c
configure LoongArch: Simplify the autoconf check for static PIE 2023-08-29 10:35:38 +08:00
configure.ac LoongArch: Simplify the autoconf check for static PIE 2023-08-29 10:35:38 +08:00
cpu-tunables.c LoongArch: Add glibc.cpu.hwcap support. 2023-09-19 09:11:49 +08:00
dl-audit-check.h LoongArch: Add lasx/lsx support for _dl_runtime_profile. 2023-09-15 09:07:42 +08:00
dl-get-cpu-features.c LoongArch: Add glibc.cpu.hwcap support. 2023-09-19 09:11:49 +08:00
dl-irel.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dl-link.sym LoongArch: Add lasx/lsx support for _dl_runtime_profile. 2023-09-15 09:07:42 +08:00
dl-machine.h LoongArch: Add glibc.cpu.hwcap support. 2023-09-19 09:11:49 +08:00
dl-tls.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dl-trampoline.h LoongArch: Add lasx/lsx support for _dl_runtime_profile. 2023-09-15 09:07:42 +08:00
dl-trampoline.S LoongArch: Add lasx/lsx support for _dl_runtime_profile. 2023-09-15 09:07:42 +08:00
dl-tunables.list LoongArch: Add glibc.cpu.hwcap support. 2023-09-19 09:11:49 +08:00
e_sqrtl.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fpu_control.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
hp-timing.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Implies LoongArch: Build Infrastructure 2022-07-26 12:35:12 -03:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ldsodefs.h LoongArch: Add vector implementation for _dl_runtime_resolve. 2023-07-11 10:56:01 +08:00
libc-tls.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
linkmap.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
machine-gmon.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Makefile LoongArch: Add glibc.cpu.hwcap support. 2023-09-19 09:11:49 +08:00
math_private.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
preconfigure configure: Use autoconf 2.71 2023-07-17 10:08:10 -04:00
preconfigure.ac LoongArch: Add soft float support. 2022-09-01 09:10:08 +08:00
setjmp.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sfp-machine.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
stackinfo.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
start.S LoongArch: Remove support code for old linker in start.S 2023-08-29 10:35:38 +08:00
tininess.h LoongArch: Generic <math.h> and soft-fp Routines 2022-07-26 12:35:12 -03:00
tst-audit.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Versions LoongArch: Add glibc.cpu.hwcap support. 2023-09-19 09:11:49 +08:00