Hi all,

this patch fixes bootstrap on FreeBSD PowerPC and hopefully all other PowerPC targets which do not have float128 support.

The patch itself is a bandaid to survive stage4. We have to come up with a better solution for FreeBSD and all other soft float targets which do not support float128.

The patch was tested by Michael Meissner on different POWER machines.

Ok to commit to trunk?

TIA,
Andreas

2016-02-03  Andreas Tobler  <andre...@gcc.gnu.org>

        PR bootstrap/69611
        * config/rs6000/sfp-machine.h: Guard __sfp_exceptions with
        __FLOAT128__ to compile only for __float128 capable targets.

Index: config/rs6000/sfp-machine.h
===================================================================
--- config/rs6000/sfp-machine.h (revision 233109)
+++ config/rs6000/sfp-machine.h (working copy)
@@ -110,7 +110,7 @@
floating point on pre-ISA 3.0 machines without the IEEE 128-bit floating
    point support.  */

-#ifndef __NO_FPRS__
+#ifdef __FLOAT128__
 #define ISA_BIT(x) (1LL << (63 - x))

 /* Use the same bits of the FPSCR.  */
@@ -151,7 +151,7 @@
   } while (0)

 # define FP_ROUNDMODE  (_fpscr & FP_RND_MASK)
-#endif /* !__NO_FPRS__ */
+#endif /* !__FLOAT128__ */

 /* Define ALIASNAME as a strong alias for NAME.  */
 # define strong_alias(name, aliasname) _strong_alias(name, aliasname)

Reply via email to