Em sáb, 14 de set de 2019 às 04:59, Paul Cercueil
<address@hidden> escreveu:
Hi Paulo,
Hi Paul,
[...]
> I believe quite some time ago I had made a commit for this issue
> in another computer, that I no longer have, and never pushed it.
> For sure it will be added in the next release of GNU Lightning
that
> I am already working on. It just is taking more time than expected
> due to issues with powerpc 32 bit abi, that previously I had
tested
> only on AIX, and when testing on Linux, it uses another ABI...
What are the issues with powerpc 32 ABI?
Previously I had tested only on AIX 32 bit, and it was quite a long
ago.
Linux 32 bit uses a different ABI, most difficult part was the
varargs
abi, that, to some extent, remembers the x86_64 abi.
Because I'm seeing strange things happening there that I don't have
on
other CPU architectures... (not endian related)
Just to make sure, please test with the latest git. I just pushed
1800+
lines of diff. Tested on:
powerpc 32 bit Linux (_CALL_SYSV)
powerpc 64 bit Linux and AIX (!_CALL_SYSV -- assume _CALL_AIX ||
_CALL_LINUX)
powerpc 64 bit little endian Linux
Powerpc 32 bit abi on AIX should work, but untested.
Dropped, hopefully only temporarily Darwin ppc, as it was broken
for a
long time, would not compile.
I believe it might have been due to using r0 as temporary in some
places.
Now it never uses r0, because r0 has special semantics on several
instructions.
Thanks,
Paulo