This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] PowerPC64 - Disable VSX usage in rtld.c to prevent TOCref before relocs are resolved.
- From: Ryan Arnold <rsa at us dot ibm dot com>
- To: Andreas Schwab <schwab at linux-m68k dot org>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Wed, 16 Feb 2011 09:12:12 -0600
- Subject: Re: [PATCH] PowerPC64 - Disable VSX usage in rtld.c to prevent TOCref before relocs are resolved.
- References: <1297803814.9113.383.camel@localhost.localdomain> <m2zkpw29aq.fsf@igel.home>
- Reply-to: rsa at us dot ibm dot com
On Tue, 2011-02-15 at 23:59 +0100, Andreas Schwab wrote:
> Ryan Arnold <rsa@us.ibm.com> writes:
>
> > diff --git a/sysdeps/powerpc/powerpc64/power7/Makefile b/sysdeps/powerpc/powerpc64/power7/Makefile
> > new file mode 100644
> > index 0000000..54b0fd9
> > --- /dev/null
> > +++ b/sysdeps/powerpc/powerpc64/power7/Makefile
> > @@ -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
>
> Please use +=.
>
> Andreas.
Corrected, I started testing this in elf/Makefile and neglected the + when I moved it into the power7 directory.
Regards,
Ryan
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.
diff --git a/sysdeps/powerpc/powerpc64/power7/Makefile b/sysdeps/powerpc/powerpc64/power7/Makefile
new file mode 100644
index 0000000..54b0fd9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/Makefile
@@ -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