aboutsummaryrefslogtreecommitdiff
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.zip
glibc-ef9596352b9863dd055578b4bfdd3777aca0bcb8.tar.gz
glibc-ef9596352b9863dd055578b4bfdd3777aca0bcb8.tar.bz2
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 0ed5811..8d55427 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 f980a9a..ceeafe9 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