[cfarm-users] PowerPC 32 bit abi on gcc110.fsffrance.org

Bruno Haible bruno at clisp.org
Tue Sep 10 02:22:34 CEST 2019


Segher Boessenkool wrote:
> $ sh config.sub powerpc64-elfv2-linux
> powerpc64-elfv2-linux-gnu
> 
> No, that is not the same thing.  It is BE, and it uses ELFv1!
> 
> 
> $ :|powerpc64-elfv2-linux-gcc -dM -E -|grep BYTE_ORDER
> #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
> 
> $ :|powerpc64-elfv2-linux-gcc -dM -E -|grep CALL
> #define _CALL_AIXDESC 1
> #define _CALL_LINUX 1
> #define _CALL_AIX 1
> #define _CALL_ELF 1

In config.guess triples, the second element is a no-op.
powerpc64-elfv2-linux-gnu, powerpc64-unknown-linux-gnu,
powerpc64-redhat-linux-gnu are all the same thing. Using
a triple 'powerpc64-elfv2-linux-gnu' would be misleading for
everyone, because - as you have shown - it does not define
_CALL_ELF=2.

I am talking about ABIs, as classified by the gnulib module
'host-cpu-c-abi' [1]. In this domain, powerpc64-elfv2 is different
from powerpc64.

Finer classifications would be possible, depending on processor
architecture (e.g. x86 with and without SSE instructions). However,
only few packages (e.g. GNU gmp) need this. For GNU Lightning,
this ABI classification should be sufficient.

Bruno

[1] https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f=m4/host-cpu-c-abi.m4;hb=HEAD



More information about the cfarm-users mailing list