AMD64 ABI compatibility

Nicolas Alt nalt@apple.com
Mon Jul 9 20:21:00 GMT 2007


Yea, __attribute__ should be the way to go - however, I have not  
found any attribute like msabi or so. It still needs to be  
implemented in the compiler. Most of the ia32 attributes are ignored  
anyway.

On Jul 9, 2007, at 12:55 , H.J. Lu wrote:

> On Mon, Jul 09, 2007 at 12:48:10PM -0700, Nicolas Alt wrote:
>> Hi!
>>
>> On the AMD64 / x86-64Bit architecture, some arguments of a functions
>> are passed using registers, but there seem to be two different
>> conventions out there. The standard ABI uses 6 registers, but
>> Microsoft compilers use only 4. Because of that, code compiled with
>> gcc cannot call code compiled with a MS compiler without an ugly
>> wrapper.
>>
>> Have there been any efforts to make gcc do function calls the MS way?
>> I guess this would be an important feature for mingw on AMD64.
>
> Gcc supports several different ABIs via __attribute__ in the same
> source file for ia32.  I don't see why it shouldn't work on x86-64.
>
>
> H.J.



More information about the Gcc mailing list