Don't add hidden symbols into static binaries

Submitted by Siddhesh Poyarekar on Aug. 11, 2017, 7:09 a.m.


Message ID
State New
Headers show

Commit Message

Siddhesh Poyarekar Aug. 11, 2017, 7:09 a.m.
The __GI_* symbol aliases for __memcpy_generic are unnecessary since
they're never used.  Add them only for 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
 sysdeps/aarch64/multiarch/memcpy_generic.S | 2 ++
 1 file changed, 2 insertions(+)

Patch hide | download patch | download mbox

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