glibc/sysdeps/aarch64
Alex Butler 79160c06c7 aarch64: MTE compatible strrchr
Add support for MTE to strrchr. Regression tested with xcheck and benchmarked
with glibc's benchtests on the Cortex-A53, Cortex-A72, and Neoverse N1.

The existing implementation assumes that any access to the pages in which the
string resides is safe. This assumption is not true when MTE is enabled. This
patch updates the algorithm to ensure that accesses remain within the bounds
of an MTE tag (16-byte chunks) and improves overall performance.

Co-authored-by: Wilco Dijkstra <wilco.dijkstra@arm.com>
2020-06-23 17:55:39 +01:00
..
bits Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
fpu aarch64: Remove fpu Makefile 2020-06-22 11:09:50 -03:00
multiarch AArch64: Merge Falkor memcpy and memmove implementations 2020-06-08 14:13:05 +01:00
nptl nptl: add missing pthread-offsets.h 2020-02-10 17:01:21 +01:00
sys Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
__longjmp.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
abort-instr.h Relocate AArch64 from ports to libc. 2014-02-11 11:36:00 +00:00
atomic-machine.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
bsd-_setjmp.S Relocate AArch64 from ports to libc. 2014-02-11 11:36:00 +00:00
bsd-setjmp.S Relocate AArch64 from ports to libc. 2014-02-11 11:36:00 +00:00
configure Require autoconf 2.69 2014-09-29 07:53:36 -07:00
configure.ac Relocate AArch64 from ports to libc. 2014-02-11 11:36:00 +00:00
crti.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
crtn.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-dtprocnum.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-irel.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-link.sym Relocate AArch64 from ports to libc. 2014-02-11 11:36:00 +00:00
dl-machine.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-sysdep.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-tls.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-tlsdesc.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-tlsdesc.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
dl-tunables.list Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
e_sqrtl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
elf-initfini.h Introduce <elf-initfini.h> and ELF_INITFINI for all architectures 2020-02-18 15:12:25 +01:00
Implies Remove sysdeps/aarch64/soft-fp directory. 2018-05-22 17:23:34 +00:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
libc-tls.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
libm-test-ulps Update aarch64 libm-test-ulps 2020-04-08 13:52:44 -03:00
libm-test-ulps-name Do not hardcode platform names in manual/libm-err-tab.pl (bug 14139). 2016-11-04 16:49:06 +00:00
linkmap.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
machine-gmon.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Makefile aarch64: new ifunc resolver ABI 2019-07-04 11:13:32 +01:00
math-tests-trap.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
mcount.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
memchr.S aarch64: MTE compatible memchr 2020-06-23 17:55:39 +01:00
memcmp.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
memcpy.S [AArch64] Improve integer memcpy 2020-03-11 17:15:25 +00:00
memmove.S This is an optimized memcpy/memmove for AArch64. Copies are split into 3 main 2016-06-20 17:41:33 +01:00
memrchr.S aarch64: MTE compatible memrchr 2020-06-23 17:55:39 +01:00
memset-reg.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
memset.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
memusage.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
preconfigure Remove relro configure test. 2014-06-27 16:51:22 +00:00
rawmemchr.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
setjmp.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
sfp-machine.h Break more lines before not after operators. 2019-02-25 13:19:19 +00:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
stackinfo.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
start.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
stpcpy.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
strchr.S aarch64: MTE compatible strchr 2020-06-09 09:20:27 +01:00
strchrnul.S aarch64: MTE compatible strchrnul 2020-06-09 09:20:27 +01:00
strcmp.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
strcpy.S aarch64: MTE compatible strcpy 2020-06-23 17:55:39 +01:00
string_private.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
strlen.S aarch64: MTE compatible strlen 2020-06-09 09:21:11 +01:00
strncmp.S Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
strnlen.S aarch64: fix strcpy and strnlen for big-endian [BZ #25824] 2020-05-15 12:15:56 +01:00
strrchr.S aarch64: MTE compatible strrchr 2020-06-23 17:55:39 +01:00
sysdep.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tls-macros.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tlsdesc.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tlsdesc.sym aarch64: Use explicit offsets in _dl_tlsdesc_dynamic 2016-12-02 16:52:57 +01:00
tst-audit.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-ifunc-arg-1.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-ifunc-arg-2.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Versions Relocate AArch64 from ports to libc. 2014-02-11 11:36:00 +00:00