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, ibm/2.13/master, updated. glibc-2.13-26-g4749a00


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, ibm/2.13/master has been updated
       via  4749a0058b27274a95c5a798e339c7299cdf890e (commit)
      from  ba2d2313fbb29915b25c5e3e58e991deb61f85cb (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://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=4749a0058b27274a95c5a798e339c7299cdf890e

commit 4749a0058b27274a95c5a798e339c7299cdf890e
Author: Ryan S. Arnold <rsa@us.ibm.com>
Date:   Wed May 18 15:19:56 2011 -0500

    Prevent Altivec and VSX insns on PowerPC64 when no FPRs or VRs are avail.

diff --git a/ChangeLog b/ChangeLog
index f631674..dd8a270 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-05-18  Ryan S. Arnold  <rsa@us.ibm.com>
+
+	* sysdeps/powerpc/powerpc64/Makefile (no-special-regs): Add -mno-vsx
+	and -mno-altivec to prevent the compiler from using Altivec and/or
+	VSX instructions when the corresponding registers are not available.
+
 2011-02-11  Jakub Jelinek  <jakub@redhat.com>
 
 	* stdio-common/printf-parsemb.c (__parse_one_specmb): Handle
diff --git a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile
index fe96aae..4d9be6c 100644
--- a/sysdeps/powerpc/powerpc64/Makefile
+++ b/sysdeps/powerpc/powerpc64/Makefile
@@ -12,7 +12,10 @@ endif
 
 # These flags prevent FPU or Altivec registers from being used,
 # for code called in contexts that is not allowed to touch those registers.
-# Stupid GCC requires us to pass all these ridiculous switches.
+# Stupid GCC requires us to pass all these ridiculous switches.  We need to
+# pass the -mno-* switches as well to prevent the compiler from attempting
+# to emit altivec or vsx instructions, especially when the registers aren't
+# available.
 no-special-regs := $(sort $(foreach n,40 41 50 51 60 61 62 63 \
 				      $(foreach m,2 3 4 5 6 7 8 9, \
 						  3$m 4$m 5$m),\
@@ -20,7 +23,7 @@ no-special-regs := $(sort $(foreach n,40 41 50 51 60 61 62 63 \
 		   $(sort $(foreach n,$(foreach m,0 1 2 3 4 5 6 7 8 9,\
 						$m 1$m 2$m) 30 31,\
 				    -ffixed-v$n)) \
-		   -ffixed-vrsave -ffixed-vscr
+		   -ffixed-vrsave -ffixed-vscr -mno-altivec -mno-vsx
 
 ifeq ($(subdir),csu)
 sysdep_routines += hp-timing

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

Summary of changes:
 ChangeLog                          |    6 ++++++
 sysdeps/powerpc/powerpc64/Makefile |    7 +++++--
 2 files changed, 11 insertions(+), 2 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]