[llvm-commits] [llvm] r47054 - in /llvm/trunk: lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/arg-cast.ll

Chris Lattner clattner at apple.com
Wed Feb 13 12:57:12 PST 2008


On Feb 13, 2008, at 10:16 AM, Dan Gohman wrote:

> Hi Chris,
>
> On Feb 12, 2008, at 11:39 PM, Chris Lattner wrote:
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=47054&view=rev
>> Log:
>> In SDISel, for targets that support FORMAL_ARGUMENTS nodes, lower  
>> this
>> node as soon as we create it in SDISel.  Previously we would lower
>> it in
>> legalize.  The problem with this is that it only exposes the argument
>> loads implied by FORMAL_ARGUMENTs after legalize, so that only dag
>> combine 2
>> can hack on them.  This causes us to miss some optimizations because
>> datatype expansion also happens here.
>
> Will this become redundant once LegalizeTypes is finished and  
> DAGCombine
> can be run between it an legalizing operations?

In this case, nope.  The issue is that legalizedagtypes would expand  
the bitconvert on x86-32 because it is f64 -> i64, and i64 isn't legal.

-Chris



More information about the llvm-commits mailing list