This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.21-170-ge0ed2fb


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, master has been updated
       via  e0ed2fb40a0e29c43cf60addc74741dab15f2e05 (commit)
      from  0b3467b344c9c30f590e5d67e9a694ea1f33b7ea (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=e0ed2fb40a0e29c43cf60addc74741dab15f2e05

commit e0ed2fb40a0e29c43cf60addc74741dab15f2e05
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Mar 6 04:55:56 2015 -0800

    Replace __attribute__((visibility("protected")))
    
    With copy relocation, address of protected data defined in the shared
    library may be external.  Compiler shouldn't asssume protected data will
    be local.  But due to
    
    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248
    
    __attribute__((visibility("protected"))) doesn't work correctly, we need
    to use asm (".protected xxx") instead.
    
    	* elf/ifuncdep2.c (global): Replace
    	__attribute__((visibility("protected"))) with
    	asm (".protected global").
    	* elf/ifuncmod1.c (global): Likewise.
    	* elf/ifuncmod5.c (global): Likewise.

diff --git a/ChangeLog b/ChangeLog
index eaccb2c..7f2e14b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2015-03-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf/ifuncdep2.c (global): Replace
+	__attribute__((visibility("protected"))) with
+	asm (".protected global").
+	* elf/ifuncmod1.c (global): Likewise.
+	* elf/ifuncmod5.c (global): Likewise.
+
 2015-03-06  Joseph Myers  <joseph@codesourcery.com>
 
 	* soft-fp/soft-fp.h [!_LIBC && __KERNEL__]: Include
diff --git a/elf/ifuncdep2.c b/elf/ifuncdep2.c
index 99d1926..6e66d31 100644
--- a/elf/ifuncdep2.c
+++ b/elf/ifuncdep2.c
@@ -2,7 +2,13 @@
 
 #include "ifunc-sel.h"
 
-int global __attribute__ ((visibility ("protected"))) = -1;
+int global = -1;
+/* Can't use __attribute__((visibility("protected"))) until the GCC bug:
+
+   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248
+
+   is fixed.  */
+asm (".protected global");
 
 static int
 one (void)
diff --git a/elf/ifuncmod1.c b/elf/ifuncmod1.c
index 2b8195c..0b61380 100644
--- a/elf/ifuncmod1.c
+++ b/elf/ifuncmod1.c
@@ -6,7 +6,13 @@
  */
 #include "ifunc-sel.h"
 
-int global __attribute__ ((visibility ("protected"))) = -1;
+int global = -1;
+/* Can't use __attribute__((visibility("protected"))) until the GCC bug:
+
+   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248
+
+   is fixed.  */
+asm (".protected global");
 
 static int
 one (void)
diff --git a/elf/ifuncmod5.c b/elf/ifuncmod5.c
index 9a08e8c..0e65a63 100644
--- a/elf/ifuncmod5.c
+++ b/elf/ifuncmod5.c
@@ -1,7 +1,13 @@
 /* Test STT_GNU_IFUNC symbols without direct function call.  */
 #include "ifunc-sel.h"
 
-int global __attribute__ ((visibility ("protected"))) = -1;
+int global = -1;
+/* Can't use __attribute__((visibility("protected"))) until the GCC bug:
+
+   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248
+
+   is fixed.  */
+asm (".protected global");
 
 static int
 one (void)

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog       |    8 ++++++++
 elf/ifuncdep2.c |    8 +++++++-
 elf/ifuncmod1.c |    8 +++++++-
 elf/ifuncmod5.c |    8 +++++++-
 4 files changed, 29 insertions(+), 3 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]