diff options
author | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2017-12-04 21:17:17 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2017-12-04 21:17:17 +0530 |
commit | 4c1d801a5956f049126ef6cbe22ed23693e77a8c (patch) | |
tree | a5e2a28dc0fe334834f18708aa7f02a554fc5c76 | |
parent | 478593e6374f3818da39332260dc453cb19cfa1e (diff) | |
download | glibc-4c1d801a5956f049126ef6cbe22ed23693e77a8c.tar.gz glibc-4c1d801a5956f049126ef6cbe22ed23693e77a8c.tar.xz glibc-4c1d801a5956f049126ef6cbe22ed23693e77a8c.zip |
aarch64: Avoid hidden symbols for memcpy/memmove into static binaries
The __GI_* symbol aliases for __memcpy_generic are unnecessary since they're never used. Add them only for libc.so to avoid PLT. Maybe some time in future we need to evaluate the relative cost of PLT vs gains from multiarch memcpy implementations and take a call on whether to drop this completely. * sysdeps/aarch64/multiarch/memcpy_generic.S (__GI_memcpy): Define only for libc.so.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/aarch64/multiarch/memcpy_generic.S | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index a847985e44..6ac924be24 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2017-12-04 Siddhesh Poyarekar <siddhesh@sourceware.org> + + * sysdeps/aarch64/multiarch/memcpy_generic.S (__GI_memcpy): + Define only for libc.so. + 2017-12-04 Stefan Liebler <stli@linux.vnet.ibm.com> * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h diff --git a/sysdeps/aarch64/multiarch/memcpy_generic.S b/sysdeps/aarch64/multiarch/memcpy_generic.S index 041a77943d..edb2e52626 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 |