On Thu, Oct 29, 2020 at 01:32:53PM -0500, Segher Boessenkool wrote: > On Thu, Oct 29, 2020 at 12:50:10PM -0400, Michael Meissner wrote: > > On Wed, Oct 28, 2020 at 06:27:42PM -0500, Segher Boessenkool wrote: > > > On Thu, Oct 22, 2020 at 06:09:38PM -0400, Michael Meissner wrote: > > > > This patch adds long double variants of the power10 __float128 built-in > > > > functions. This is needed when long double uses IEEE 128-bit because > > > > __float128 uses TFmode in this case instead of KFmode. If this patch > > > > is not > > > > applied, these built-in functions can't be used when long double is IEEE > > > > 128-bit. > > > > > > But now they still cannot, you need new builtins, instead. > > > > > > TFmode is an implementation detail at this level (functions use types, > > > not modes), so you do not need new builtins at all afaics? Just define > > > the existing ones with TFmode as well (if that is the same as KFmode)? > > > > In order to add new overloaded built-ins, you have to add a new built-in > > with a > > new name. > > I do not follow? Just delete the old non-overloaded one and add the > overloaded one with that same old name at the same time.
You have to have 3 names for the built-in function: * A name specific to KFmode; * A name specific to long double with IEEE 128-bit; (and) * The generic name. And the generic name (from the user point of view, not the insn name) needs to be the generic name. > TF is a nasty name, it means a different thing externally (in the libgcc > function names, say: always IFmode) and internally (it varies what it > means). > > > Maybe when Bill finally reorganizes the built-in functions, we can do anyway > > with having to create new named functions. But for now, in order to add > > them, > > you need a name. > > Of course. And there already is a name :-) One name, but as I said, we will now need three insn names, and these names spill out to the built-in names. Even if we don't document the names, they still exist and determined users can call them. -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797