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.
This commit is contained in:
Siddhesh Poyarekar 2017-12-04 21:17:17 +05:30
parent 478593e637
commit 4c1d801a59
2 changed files with 7 additions and 0 deletions

View File

@ -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

View File

@ -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