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.20-452-g07256e1


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  07256e183efe00ed833d1f744f7eef1e103afd74 (commit)
      from  1ff950ad20111b591ad1312df4d802de9d1f1b1e (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=07256e183efe00ed833d1f744f7eef1e103afd74

commit 07256e183efe00ed833d1f744f7eef1e103afd74
Author: Andrew Senkevich <andrew.senkevich@intel.com>
Date:   Tue Dec 30 11:34:53 2014 -0800

    i386: Fix build by GCC 5.0
    
    Fixed 3 "make check" failures on glibc 32bit built by gcc 5.0 due to EBX
    was enabled for allocation:
    
    https://gcc.gnu.org/ml/gcc-patches/2014-10/msg00892.html
    
    Tests elf/tst-tls3, elf/tst-execstack-needed, elf/tst-execstack-prog
    were failed because EBX was used as PIC register.
    
    	* sysdeps/i386/tls-macros.h: Include <features.h>.
    	(TLS_LE): Use non-PIC version for GCC >= 5.0.
    	(TLS_IE): Likewise.
    	(TLS_LD): Likewise.
    	(TLS_GD): Likewise.
    	* sysdeps/unix/sysv/linux/i386/sysdep.h (check_consistency): Don't
    	define for GCC >= 5.0.

diff --git a/ChangeLog b/ChangeLog
index d6c2d28..5937975 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2014-12-30  Andrew Senkevich  <andrew.senkevich@intel.com>
+
+	* sysdeps/i386/tls-macros.h: Include <features.h>.
+	(TLS_LE): Use non-PIC version for GCC >= 5.0.
+	(TLS_IE): Likewise.
+	(TLS_LD): Likewise.
+	(TLS_GD): Likewise.
+	* sysdeps/unix/sysv/linux/i386/sysdep.h (check_consistency): Don't
+	define for GCC >= 5.0.
+
 2014-12-30  Chris Metcalf  <cmetcalf@ezchip.com>
 
 	* math/test-fenv.c (test_single_exception, set_single_exc,
diff --git a/sysdeps/i386/tls-macros.h b/sysdeps/i386/tls-macros.h
index 0b85738..053cba0 100644
--- a/sysdeps/i386/tls-macros.h
+++ b/sysdeps/i386/tls-macros.h
@@ -1,3 +1,5 @@
+#include <features.h> /* For __GNUC_PREREQ.  */
+
 #define TLS_LE(x) \
   ({ int *__l;								      \
      asm ("movl %%gs:0,%0\n\t"						      \
@@ -5,7 +7,7 @@
 	  : "=r" (__l));						      \
      __l; })
 
-#ifdef PIC
+#if defined PIC && !__GNUC_PREREQ (5,0)
 # define TLS_IE(x) \
   ({ int *__l;								      \
      asm ("movl %%gs:0,%0\n\t"						      \
@@ -27,7 +29,7 @@
      __l; })
 #endif
 
-#ifdef PIC
+#if defined PIC && !__GNUC_PREREQ (5,0)
 # define TLS_LD(x) \
   ({ int *__l, __c, __d;						      \
      asm ("leal " #x "@tlsldm(%%ebx),%%eax\n\t"				      \
@@ -51,7 +53,7 @@
      __l; })
 #endif
 
-#ifdef PIC
+#if defined PIC && !__GNUC_PREREQ (5,0)
 # define TLS_GD(x) \
   ({ int *__l, __c, __d;						      \
      asm ("leal " #x "@tlsgd(%%ebx),%%eax\n\t"				      \
diff --git a/sysdeps/unix/sysv/linux/i386/sysdep.h b/sysdeps/unix/sysv/linux/i386/sysdep.h
index d751c58..b574418 100644
--- a/sysdeps/unix/sysv/linux/i386/sysdep.h
+++ b/sysdeps/unix/sysv/linux/i386/sysdep.h
@@ -502,7 +502,7 @@ asm (".L__X'%ebx = 1\n\t"
 #endif
 
 /* Consistency check for position-independent code.  */
-#ifdef __PIC__
+#if defined __PIC__ && !__GNUC_PREREQ (5,0)
 # define check_consistency()						      \
   ({ int __res;								      \
      __asm__ __volatile__						      \

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

Summary of changes:
 ChangeLog                             |   10 ++++++++++
 sysdeps/i386/tls-macros.h             |    8 +++++---
 sysdeps/unix/sysv/linux/i386/sysdep.h |    2 +-
 3 files changed, 16 insertions(+), 4 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]