glibc/sysdeps/aarch64
Alex Butler f8db9906d7 aarch64: MTE compatible strncmp
Add support for MTE to strncmp. 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: Branislav Rankov <branislav.rankov@arm.com>
Co-authored-by: Wilco Dijkstra <wilco.dijkstra@arm.com>
(cherry picked from commit 03e1378f94)
2024-11-04 16:25:27 +00:00
..
bits Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
fpu Break more lines before not after operators. 2019-02-25 13:19:19 +00:00
multiarch AArch64: Use __memcpy_simd on Neoverse N2/V1 2020-10-14 14:30:01 +01:00
nptl Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sys aarch64: new ifunc resolver ABI 2019-07-04 11:13:32 +01:00
Implies Remove sysdeps/aarch64/soft-fp directory. 2018-05-22 17:23:34 +00:00
Makefile aarch64: new ifunc resolver ABI 2019-07-04 11:13:32 +01:00
Versions
__longjmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
abort-instr.h
atomic-machine.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
bsd-_setjmp.S
bsd-setjmp.S
configure
configure.ac
crti.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
crtn.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-dtprocnum.h aarch64: handle STO_AARCH64_VARIANT_PCS 2019-06-13 09:45:00 +01:00
dl-irel.h aarch64: new ifunc resolver ABI 2019-07-04 11:13:32 +01:00
dl-link.sym
dl-machine.h aarch64: Fix DT_AARCH64_VARIANT_PCS handling [BZ #26798] 2020-11-04 12:23:43 +00:00
dl-sysdep.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tls.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tlsdesc.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tlsdesc.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tunables.list Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
e_sqrtl.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
libc-tls.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
libm-test-ulps Add new exp and exp2 implementations 2018-09-05 16:22:00 +01: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 aarch64: simplify the DT_AARCH64_VARIANT_PCS handling code 2019-07-10 15:28:00 +01:00
machine-gmon.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
math-tests-trap.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mcount.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memchr.S aarch64: Optimized memchr specific to AmpereComputing emag 2019-02-01 08:14:21 -05:00
memcmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memcpy.S [AArch64] Improve integer memcpy 2020-10-12 17:10:25 +01:00
memmove.S
memset-reg.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memset.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memusage.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
preconfigure
rawmemchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
setjmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +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. 2019-01-01 00:11:28 +00:00
stackinfo.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
start.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
stpcpy.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strchrnul.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strcmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strcpy.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
string_private.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strlen.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strncmp.S aarch64: MTE compatible strncmp 2024-11-04 16:25:27 +00:00
strnlen.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strrchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sysdep.h AArch64: Align ENTRY to a cacheline 2020-10-12 16:52:41 +01:00
tls-macros.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tlsdesc.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +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. 2019-01-01 00:11:28 +00:00
tst-ifunc-arg-1.c aarch64: new ifunc resolver ABI 2019-07-04 11:13:32 +01:00
tst-ifunc-arg-2.c aarch64: new ifunc resolver ABI 2019-07-04 11:13:32 +01:00