Resend: Potential upcoming changes in mangling to PowerPC GCC
Segher Boessenkool
segher@kernel.crashing.org
Wed Aug 10 20:04:00 GMT 2022
On Wed, Aug 10, 2022 at 04:55:42PM -0300, Tulio Magno Quites Machado Filho wrote:
> Michael Meissner via Gcc <gcc@gcc.gnu.org> writes:
> > Because long double mangles the same as either __float128 or __ibm128, you
> > cannot write programs like:
> >
> > double convert (__ibm128 x) { return x; }
> > double convert (__float128 x) { return x; }
> > double convert (long double x) { return x; }
> >
> > You would have to write on a system with long double being IBM 128-bit:
> >
> > double convert (__float128 x) { return x; }
> > double convert (long double x) { return x; }
> >
> > or on a system with long double being IEEE 128-bit:
> >
> > double convert (__ibm128 x) { return x; }
> > double convert (long double x) { return x; }
>
> Does that mean, when long double is IEEE 128-bit, the compiler won't support
> _Float128/__float128 ?
You can write
double convert (__ibm128 x) { return x; }
double convert (__ieee128 x) { return x; }
as well. "__ieee128" and "long double" are the same type then (and the
same as _Float128 and __float128 as well).
Segher
More information about the Libc-alpha
mailing list