On Mon, Dec 05, 2011 at 07:25:35PM -0500, David Edelsohn wrote:
> Is this fixed or is someone writing a follow-up patch?

This does the trick.  You could also use
        case ${host}:${with_multisubdir} in
            *:*32*)
                ;;
            powerpc64-*:* | *:*64*)
                tmake_file="$tmake_file rs6000/t-linux64"
                ;;
        esac
in config.host, but that's unnecessarily complicated.  The t-linux64
bits can safely go in other config files.  Bootstrapped and regression
tested powerpc-linux and powerpc64-linux.

        * config/rs6000/t-linux64: Delete.  Move..
        * config/rs6000/t-ppc64-fp: .. softfp_wrap defines to here..
        * config/rs6000/t-linux: ..and libgcc flags to here.

Index: libgcc/config/rs6000/t-linux64
===================================================================
--- libgcc/config/rs6000/t-linux64      (revision 183464)
+++ libgcc/config/rs6000/t-linux64      (working copy)
@@ -1,4 +0,0 @@
-HOST_LIBGCC2_CFLAGS += -mno-minimal-toc
-
-softfp_wrap_start := '\#ifndef __powerpc64__'
-softfp_wrap_end := '\#endif'
Index: libgcc/config/rs6000/t-ppc64-fp
===================================================================
--- libgcc/config/rs6000/t-ppc64-fp     (revision 183464)
+++ libgcc/config/rs6000/t-ppc64-fp     (working copy)
@@ -1,2 +1,5 @@
 # Can be used unconditionally, wrapped in __powerpc64__ || __64BIT__ __ppc64__.
 LIB2ADD += $(srcdir)/config/rs6000/ppc64-fp.c
+
+softfp_wrap_start := '\#ifndef __powerpc64__'
+softfp_wrap_end := '\#endif'
Index: libgcc/config/rs6000/t-linux
===================================================================
--- libgcc/config/rs6000/t-linux        (revision 183464)
+++ libgcc/config/rs6000/t-linux        (working copy)
@@ -1,3 +1,3 @@
 SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-glibc.ver
 
-HOST_LIBGCC2_CFLAGS += -mlong-double-128
+HOST_LIBGCC2_CFLAGS += -mlong-double-128 -mno-minimal-toc

-- 
Alan Modra
Australia Development Lab, IBM

Reply via email to