[LLVMdev] LiveVariables/LiveInterval on huge functions

Chris Lattner sabre at nondot.org
Mon Apr 14 10:43:13 PDT 2008


On Mon, 14 Apr 2008, [ISO-8859-1] Török Edwin wrote:
>> Another question to ask, is why that function became so large in the
>> first place [X86DAGToDAGISel::SelectCode(llvm::SDOperand)]
>> We have inline limits, don't we?
>
> most of functions called by SelectCode get a -30000 cost reduction
> because they are internal.
> Even if Caller.size() is 40000, the penalty is only 2000, thus we still
> have negative costs.
>
> Removing the /20 factor from here improves the situation a lot, however
> I think there is  a reason for /20, and it can't be just removed:
> InlineCost += Caller->size()/20;

This sounds like unanticipated fallout from Evan's recent tweaks of the 
inliner.  Evan, thoughts?

-Chris

-- 
http://nondot.org/sabre/
http://llvm.org/


More information about the llvm-dev mailing list