[llvm-commits] [llvm-gcc-4.2] r48502 - /llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Chris Lattner clattner at apple.com
Wed Mar 19 18:30:17 PDT 2008


>>> Let's call this: "pass by sret".  Whether something is passed by  
>>> sret
>>> or not is specified by the ABI and as such has nothing to do with  
>>> whether
>>> it is an aggregate or not.  For example, some strange ABI could  
>>> specify
>>> that integers should be passed using the sret mechanism.  Silly, but
>>> logically possible.
>>
>> Right.  It seems logical in this case for the EmitCall code to say  
>> "this is a first class LLVM value that is references as llvm  
>> values" and "this first class value needs to be returned as sret"  
>> therefore "I should create a temporary in EmitCall, and issue a  
>> load after the call to return the first class value".
>>
>> Does this seem reasonable Dale?
>
> Yes.  I'll do it that way.

Thanks! Does this sound reasonable Duncan?

-Chris



More information about the llvm-commits mailing list