modified x86 ABI

Andi Kleen andi@firstfloor.org
Tue Oct 23 10:58:00 GMT 2007


Mark Shinwell <shinwell@codesourcery.com> writes:

> - 64-bit arguments are aligned on 64-bit boundaries -- which may mean
>   that padding is inserted beneath them (for example if there is a
>   32-bit argument aligned to a 64-bit boundary beneath the 64-bit
>   argument).  No more padding than is required is inserted.

If you want to make it usable for Linux kernel based system you would
need to change alignof(long long) to 4 matching i386. 

Otherwise you cannot use the existing 32bit emulation layer and would
need a new one (this is much more than just a standard C library; it
also covers all ioctls and all system calls)

Same is likely true for the BSDs and Solaris at least.

-Andi



More information about the Gcc mailing list