libgfortran.so SONAME and powerpc64le-linux ABI changes

Thomas Koenig tkoenig@netcologne.de
Fri Oct 15 18:58:05 GMT 2021


On 15.10.21 20:11, Jakub Jelinek wrote:
> On Fri, Oct 15, 2021 at 08:05:38PM +0200, Thomas Koenig wrote:
>>> with -mabi=ibmlongdouble, I see 31 and 291, while with -mabi=ieeelongdouble
>>> 33 and 4931.  The 0.0_8 precision/range values are 15 and 307, so neither
>>> precision of C long double if it is double-double nor range matches anything.
>>> If we do implement double-double support, I think KIND=15 would be better
>>> than KIND=17, it is true that double-double has for certain numbers much
>>> higher precision than IEEE quad, but the precision depends on the numbers
>>> and most of the time is smaller, the range is always smaller.  And
>>> the PRECISION/RANGE intrinsic numbers are also both smaller.
>>
>> There is one potential problem: selected_real_kind.
>>
>> The standard says about that...
>>
>> # If more than one kind type parameter value meets the criteria, the
>> # value returned is the one with the smallest decimal precision, unless
>> # there are several such values, in which case the smallest of these
>> # kind values is returned
>>
>> So, selected_real_kind(25) would yield double double, and we would
>> have to violate the standard there if we wanted people to have
>> IEEE QP in that case.
> 
> That would be true if some kind exist for double double, whether
> it is kind == 15 or kind == 17, no?

Correct.  The authors probably did not think of this particular
case when they wrote the standard.

We can ask the J3 standards committee to change the wording.  I think
I will just do that, to see what they have to say.

Best regards

	Thomas


More information about the Gcc mailing list