]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Disable VSX usage in rtld.c to prevent TOC ref before relocs are resolved.
authorRyan S. Arnold <rsa@us.ibm.com>
Thu, 17 Feb 2011 05:59:15 +0000 (00:59 -0500)
committerPetr Baudis <pasky@suse.cz>
Thu, 26 May 2011 21:57:08 +0000 (23:57 +0200)
(cherry picked from commit 2206397e1c46f69fb20eeb3de1920d3a7014c325)

ChangeLog
sysdeps/powerpc/powerpc64/power7/Makefile [new file with mode: 0644]

index 08bb5de111c952c28d04733c18775700b44a5ff1..9d07a907f374aeffb37efaad3a1983e93c821a24 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-02-15  Ryan S. Arnold  <rsa@us.ibm.com>
+
+       * sysdeps/powerpc/powerpc64/power7/Makefile: New file which adds
+       -mno-vsx to the CFLAGS-rtld.c variable to avoid using VSX registers and
+       insns in _dl_start to prevent a TOC reference before relocs are
+       resolved.
+
 2011-02-11  Jakub Jelinek  <jakub@redhat.com>
 
        * stdio-common/printf-parsemb.c (__parse_one_specmb): Handle
diff --git a/sysdeps/powerpc/powerpc64/power7/Makefile b/sysdeps/powerpc/powerpc64/power7/Makefile
new file mode 100644 (file)
index 0000000..b0f4520
--- /dev/null
@@ -0,0 +1,5 @@
+ifeq ($(subdir),elf)
+# Prevent the use of VSX registers and insns in _dl_start, which under -O3
+# optimization may require a TOC reference before relocations are resolved.
+CFLAGS-rtld.c += -mno-vsx
+endif