This patch is the machine independent patch for libgcc to add IEEE 128-bit floating point to the PowerPC.
This patch allows the PowerPC port to override the TFtype in quad.h to allow it to use __float128 instead of attribute ((TF)). On most of the PowerPC systems, TFmode by default is the IBM extended double format. 2014-07-15 Michael Meissner <meiss...@linux.vnet.ibm.com> * soft-fp/quad.h (TFtype): Allow TFmode to be overridden by the machine dependent files. -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.vnet.ibm.com, phone: +1 (978) 899-4797
Index: libgcc/soft-fp/quad.h =================================================================== --- libgcc/soft-fp/quad.h (.../svn+ssh://meiss...@gcc.gnu.org/svn/gcc/trunk) (revision 212529) +++ libgcc/soft-fp/quad.h (working copy) @@ -66,7 +66,13 @@ #define _FP_HIGHBIT_DW_Q \ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_DW_Q - 1) % _FP_W_TYPE_SIZE) +/* Allow machine to override the name of the 128-bit floating point type. + PowerPC long double historically used a pair of doubles on Linux/BSD + systems, so use the __float128 type if it is available, instead of + TFmode. */ +#ifndef TFtype typedef float TFtype __attribute__ ((mode (TF))); +#endif #if _FP_W_TYPE_SIZE < 64