diff --git a/lib/Analysis/InlineCost.cpp b/lib/Analysis/InlineCost.cpp index 780f921fff4..76f13484029 100644 --- a/lib/Analysis/InlineCost.cpp +++ b/lib/Analysis/InlineCost.cpp @@ -343,12 +343,9 @@ int InlineCostAnalyzer::getSpecializationBonus(Function *Callee, if (CalleeFI->Metrics.NumBlocks == 0) CalleeFI->analyzeFunction(Callee); - - for (unsigned i = 0, s = SpecializedArgNos.size(); - i < s; ++i ) - { + for (unsigned i = 0, s = SpecializedArgNos.size(); i < s; ++i ) Bonus += CalleeFI->ArgumentWeights[SpecializedArgNos[i]].ConstantBonus; - } + // Calls usually take a long time, so they make the specialization gain // smaller. Bonus -= CalleeFI->Metrics.NumCalls * InlineConstants::CallPenalty; @@ -514,9 +511,7 @@ InlineCost InlineCostAnalyzer::getSpecializationCost(Function *Callee, // away with the given arguments replaced by constants. for (SmallVectorImpl::iterator an = SpecializedArgNos.begin(), ae = SpecializedArgNos.end(); an != ae; ++an) - { Cost -= CalleeFI->ArgumentWeights[*an].ConstantWeight; - } return llvm::InlineCost::get(Cost); }