libgfortran.so SONAME and powerpc64le-linux ABI changes

Peter Bergner bergner@linux.ibm.com
Wed Oct 6 19:30:03 GMT 2021


On 10/6/21 12:50 PM, Segher Boessenkool wrote:
> So we have three options (well, four):
> 
> 0) Do nothing.  We will stay in this hell forever.  Not my choice :-)
> 1) Use a soft-float-like parameter passing everywhere.  This works but
>    will be horridly slow on newer systems.  We can do better than that.
> 2) Use the current setup where -mcpu=power8 (or later) makes QP float
>    available.  Most BE stuff isn't compiled with that currently, and it
>    will split our ecosystem.
> 3) As Joseph reminds me the high VSRs are the VRs, so we could use the
>    same parameter passing on anything with AltiVec.  We could even
>    simply require -maltivec for QP float to be supported (we currently
>    require -mvsx, this would not be a restriction).
> 
> I think I like 3) :-)

I like 3 too, meaning requiring -maltivec to support IEEE QP at all.
This would cover POWER6 and later server CPUs, as well as some other
cpus like in the Power Macs.  

Anything without Altivec hardware would need to either not support
IEEE QP at all, or go through the work themselves of coming up with
a -msoft-altivec like ABI.

Peter



More information about the Gcc mailing list