[llvm-commits] [llvm] r57925 - in /llvm/trunk: lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp test/CodeGen/X86/pr2924.ll

Chris Lattner clattner at apple.com
Wed Oct 22 17:40:58 PDT 2008


On Oct 22, 2008, at 10:40 AM, Tomas Lindquist Olsen wrote:
>
> If you have an example of C code that worked with llvm-gcc in 2.3  
> but that fails with llvm-gcc in 2.4, then it would be a regression  
> and yes we would want to pull it in.  Otherwise unfortunately we  
> shouldn't pull it in.


I don't have llvm-gcc, this code is generated by my D compiler.
>
> Using first class aggregates only started working after this fix (at  
> least when doing optimizations, which is what produces the select  
> inst)
>
> Sounds like we won't be able to support the 2.4 release. Oh well...

Why?  It is trivial to support. Any time you would make a FCA select  
instruction, just produce a sequence of 'extract values' select  
between the extracted values, then use 'insertvalue' to recreate the  
result.

>
>
> If I do find some time for it, what kind of C/C++ code would I write  
> to generate something that produces first class aggregates ?

X86-64 return values.  It would be *very very hard* to do this

-Chris




More information about the llvm-commits mailing list