[PATCH] aarch64: Avoid hidden symbols for memcpy/memmove into static binaries
Siddhesh Poyarekar
siddhesh@sourceware.org
Thu Nov 30 11:26:00 GMT 2017
The __GI_* symbol aliases for __memcpy_generic are unnecessary since
they're never used. Add them only for libc.so to avoid PLT.
* sysdeps/aarch64/multiarch/memcpy_generic.S (__GI_memcpy):
Define only for libc.so.
---
sysdeps/aarch64/multiarch/memcpy_generic.S | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sysdeps/aarch64/multiarch/memcpy_generic.S b/sysdeps/aarch64/multiarch/memcpy_generic.S
index 041a779..edb2e52 100644
--- a/sysdeps/aarch64/multiarch/memcpy_generic.S
+++ b/sysdeps/aarch64/multiarch/memcpy_generic.S
@@ -33,9 +33,11 @@
# undef libc_hidden_builtin_def
# define libc_hidden_builtin_def(name)
+# ifdef SHARED
/* It doesn't make sense to send libc-internal memcpy calls through a PLT. */
.globl __GI_memcpy; __GI_memcpy = __memcpy_generic
.globl __GI_memmove; __GI_memmove = __memmove_generic
+# endif
#endif
--
2.7.5
More information about the Libc-alpha
mailing list