[llvm-commits] [llvm-gcc-4.2] r46164 - in /llvm-gcc-4.2/trunk/gcc/config/i386: llvm-i386-target.h llvm-i386.cpp

Chris Lattner clattner at apple.com
Tue Jan 29 20:12:40 PST 2008


On Jan 29, 2008, at 5:52 PM, Dale Johannesen wrote:

>> If ABI specifies the aggregate should be passed in memory, then llvm-
>> gcc passes it byval. Otherwise, it chops up in pieces following the
>> ABI specification (only x86-64 uses a mixture of integer and non-
>> integer registers).
>
> Just noticed this...Darwin ppc64 also uses a mix of registers.  The  
> same
> struct can use int, float, vector registers and memory in extreme  
> cases.

Yep, getting darwin/ppc64 abi compliance will require us to do  
something like Evan did for x86-64, but for ppc.  Struct return is  
even crazier on ppc64 iirc.

-Chris



More information about the llvm-commits mailing list