about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-05-22 10:13:21 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-05-23 09:36:08 -0300
commitef9596352b9863dd055578b4bfdd3777aca0bcb8 (patch)
tree23918eb312a6d3e8f33d312da0e7169983441483
parente9a37242f9cca80496aa934158b7e366b8b419fa (diff)
downloadglibc-ef9596352b9863dd055578b4bfdd3777aca0bcb8.tar.gz
glibc-ef9596352b9863dd055578b4bfdd3777aca0bcb8.tar.xz
glibc-ef9596352b9863dd055578b4bfdd3777aca0bcb8.zip
aarch64: Remove duplicate memchr/strlen in libc.a (BZ 31777)
The generic version provides weak definitions of memchr/strlen,
which are already provided by the ifunc resolvers.
Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
-rw-r--r--sysdeps/aarch64/multiarch/memchr_generic.S3
-rw-r--r--sysdeps/aarch64/multiarch/strlen_generic.S3
2 files changed, 6 insertions, 0 deletions
diff --git a/sysdeps/aarch64/multiarch/memchr_generic.S b/sysdeps/aarch64/multiarch/memchr_generic.S
index 0ed5811745..8d554275ba 100644
--- a/sysdeps/aarch64/multiarch/memchr_generic.S
+++ b/sysdeps/aarch64/multiarch/memchr_generic.S
@@ -24,6 +24,9 @@
 # undef libc_hidden_builtin_def
 # define libc_hidden_builtin_def(name)
 
+# undef weak_alias
+# define weak_alias(a, b)
+
 /* Add a hidden definition for use within libc.so.  */
 # ifdef SHARED
 	.globl __GI_memchr; __GI_memchr = __memchr_generic
diff --git a/sysdeps/aarch64/multiarch/strlen_generic.S b/sysdeps/aarch64/multiarch/strlen_generic.S
index f980a9a68f..ceeafe920c 100644
--- a/sysdeps/aarch64/multiarch/strlen_generic.S
+++ b/sysdeps/aarch64/multiarch/strlen_generic.S
@@ -30,6 +30,9 @@
 # undef libc_hidden_builtin_def
 # define libc_hidden_builtin_def(name)
 
+# undef weak_alias
+# define weak_alias(a, b)
+
 # ifdef SHARED
 /* It doesn't make sense to send libc-internal strlen calls through a PLT. */
 	.globl __GI_strlen; __GI_strlen = __strlen_generic