[RFC/PATCH] Remove the workaround for _Float128 precision [PR107299]

Jakub Jelinek jakub@redhat.com
Tue Jan 10 18:23:23 GMT 2023


On Mon, Jan 09, 2023 at 10:21:52PM -0500, Michael Meissner wrote:
> I had the patches to change the precision to 128, and I just ran them.  C and
> C++ do not seem to be bothered by changing the precision to 128 (once I got it
> to build, etc.).  But Fortran on the other hand does actually use the precision
> to differentiate between IBM extended double and IEEE 128-bit.  In particular,
> the following 3 tests fail when long double is IBM extended double:
> 
> 	gfortran.dg/PR100914.f90
> 	gfortran.dg/c-interop/typecodes-array-float128.f90
> 	gfortran.dg/c-interop/typecodes-scalar-float128.f90
> 
> I tried adding code to use the old precisions for Fortran, but not for C/C++,
> but it didn't seem to work.
> 
> So while it might be possible to use a single 128 for the precision, it needs
> more work and attention, particularly on the Fortran side.

Can't be more than a few lines changed in the fortran FE.
Yes, the FE needs to know if it is IBM extended double or IEEE 128-bit so
that it can decide on the mangling - where to use the artificial kind 17 and
where to use 16.  But as long as it can figure that out, it doesn't need to
rely on a particular precision.

	Jakub



More information about the Gcc-patches mailing list