[LLVMdev] Plans considering first class structs and multiple return values

Marc de Kruijf dekruijf at cs.wisc.edu
Wed Jul 2 15:00:39 PDT 2008


Hi, I'm really interested in this effort.  What is its status?  Is any
of it in svn yet?  (I only see the insert/extract value instructions
so far... nothing w.r.t. creating a first-class struct/array).  Can I
do anything to help?

Marc

On Mon, Jun 9, 2008 at 9:15 AM, Devang Patel <dpatel at apple.com> wrote:
>
> On Jun 9, 2008, at 4:14 AM, Duncan Sands wrote:
>
>> Hi,
>>
>>> Will sretpromotion still be needed? If the frontends would generate
>>> functions
>>> returning a struct directly instead of using an sret argument, sret
>>> could
>>> perhaps be removed alltogether? Though I guess there is an ABI
>>> difference
>>> between using sret and returning a structure directly?
>>
>> right, there's an ABI difference.  Also you can't return variable
>> sized structs
>> using MRV support (I don't know if gcc really supports this, but
>> some pieces of
>> code inside gcc mention functions returning variable sized objects).
>
> Plus it is not a good idea to pass very large structs using MRV.
> -
> Devang
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>



More information about the llvm-dev mailing list