This is the mail archive of the
mailing list for the GCC project.
Re: modified x86 ABI
- From: Andi Kleen <andi at firstfloor dot org>
- To: Mark Shinwell <shinwell at codesourcery dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 23 Oct 2007 12:17:21 +0200
- Subject: Re: modified x86 ABI
- References: <email@example.com> <471DBD9B.firstname.lastname@example.org> <email@example.com> <471DC5E9.firstname.lastname@example.org>
Mark Shinwell <email@example.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.