This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.21-170-ge0ed2fb
- From: hjl at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 7 Mar 2015 01:06:14 -0000
- Subject: 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