On Thu, Sep 28, 2017 at 12:40:24AM +0000, Joseph Myers wrote: > On Wed, 27 Sep 2017, Michael Meissner wrote: > > > The glibc team has requested we define the standard macro > > (__FP_FAST_FMAF128) > > for PowerPC code when we have the IEEE 128-bit floating point hardware > > instructions enabled. > > It's not a standard macro. TS 18661-3 has FP_FAST_FMAF128 as an optional > math.h macro (but glibc doesn't define it anywhere at present). > > > This patch does this in the PowerPC backend. As I look at the whole issue, > > at > > some point we should do this more in the machine independent portion of the > > compiler. I have some initial patches to do this in the c-family files, > > but at > > the present time, the patches are not complete, and I need to think about it > > more. > > I think a machine-independent definition (for _FloatN / _FloatNx types in > general) should go along with machine-independent fmafN / fmafNx built-in > functions; when the built-in function is machine-specific, it's natural > for the macro to be as well.
I have patches for this that I will submit shortly to replace the rs6000 specific patch. I haven't yet found all of the places that need to be changed for more traditional math functions like sqrtf128. > But in any case, the new macro should be documented in cpp.texi alongside > the existing __FP_FAST_FMA* macros (probably in the generic > __FP_FAST_FMAF@var{n} and __FP_FAST_FMAF@var{n}X form). -- 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