This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch gentoo/2.24 updated. glibc-2.24-44-g27a54a0
- From: vapier at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 9 Feb 2017 16:18:57 -0000
- Subject: GNU C Library master sources branch gentoo/2.24 updated. glibc-2.24-44-g27a54a0
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, gentoo/2.24 has been updated
via 27a54a0980cb30f7d3fd930d540c8cd10e2cccd0 (commit)
from 20f534e0abd81149c71cef082c8c058bb9d953af (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=27a54a0980cb30f7d3fd930d540c8cd10e2cccd0
commit 27a54a0980cb30f7d3fd930d540c8cd10e2cccd0
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Mon Nov 28 09:44:49 2016 -0800
X86_64: Don't use PLT nor GOT in static archives [BZ #20750]
There is no need to use PLT nor GOT in static archives to branch to a
function, regardless whether static archives is compiled with PIC or
not. When static archives are used to create dynamic executable,
PLT/GOT may be used. The resulting executable still works correctly.
[BZ #20750]
* sysdeps/x86_64/sysdep.h (JUMPTARGET): Check SHARED instead
of PIC.
(cherry picked from commit c9070e6305c08365c5f8b604bdca39c699d70cfa)
(cherry picked from commit d012ea850680a2a94959f1c5136502a0f712b30a)
diff --git a/sysdeps/x86_64/sysdep.h b/sysdeps/x86_64/sysdep.h
index 75ac747..4b67fa8 100644
--- a/sysdeps/x86_64/sysdep.h
+++ b/sysdeps/x86_64/sysdep.h
@@ -89,13 +89,14 @@ lose: \
END (name)
#undef JUMPTARGET
-#ifdef PIC
+#ifdef SHARED
# ifdef BIND_NOW
# define JUMPTARGET(name) *name##@GOTPCREL(%rip)
# else
# define JUMPTARGET(name) name##@PLT
# endif
#else
+/* For static archives, branch to target directly. */
# define JUMPTARGET(name) name
#endif
-----------------------------------------------------------------------
Summary of changes:
sysdeps/x86_64/sysdep.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
hooks/post-receive
--
GNU C Library master sources