Lines Matching refs:Callee
261 int InlineCostAnalyzer::getSpecializationBonus(Function *Callee, in getSpecializationBonus() argument
264 if (Callee->mayBeOverridden()) in getSpecializationBonus()
270 if (Callee->getCallingConv() == CallingConv::Cold) in getSpecializationBonus()
274 FunctionInfo *CalleeFI = &CachedFunctionInfo[Callee]; in getSpecializationBonus()
278 CalleeFI->analyzeFunction(Callee); in getSpecializationBonus()
282 for (Function::arg_iterator I = Callee->arg_begin(), E = Callee->arg_end(); in getSpecializationBonus()
362 int InlineCostAnalyzer::getInlineSize(CallSite CS, Function *Callee) { in getInlineSize() argument
364 FunctionInfo *CalleeFI = &CachedFunctionInfo[Callee]; in getInlineSize()
368 CalleeFI->analyzeFunction(Callee); in getInlineSize()
381 for (Function::arg_iterator FI = Callee->arg_begin(), FE = Callee->arg_end(); in getInlineSize()
415 int InlineCostAnalyzer::getInlineBonuses(CallSite CS, Function *Callee) { in getInlineBonuses() argument
417 FunctionInfo *CalleeFI = &CachedFunctionInfo[Callee]; in getInlineBonuses()
421 CalleeFI->analyzeFunction(Callee); in getInlineBonuses()
423 bool isDirectCall = CS.getCalledFunction() == Callee; in getInlineBonuses()
430 if (Callee->hasLocalLinkage() && Callee->hasOneUse() && isDirectCall) in getInlineBonuses()
444 if (Callee->getCallingConv() == CallingConv::Cold) in getInlineBonuses()
453 for (Function::arg_iterator FI = Callee->arg_begin(), FE = Callee->arg_end(); in getInlineBonuses()
471 Function *Callee, in getInlineCost() argument
479 if (Callee->mayBeOverridden() || in getInlineCost()
480 Callee->hasFnAttr(Attribute::NoInline) || NeverInline.count(Callee) || in getInlineCost()
485 FunctionInfo *CalleeFI = &CachedFunctionInfo[Callee]; in getInlineCost()
489 CalleeFI->analyzeFunction(Callee); in getInlineCost()
499 if (!Callee->isDeclaration() && Callee->hasFnAttr(Attribute::AlwaysInline)) in getInlineCost()
512 CalleeFI = &CachedFunctionInfo[Callee]; in getInlineCost()
527 int InlineCost = getInlineSize(CS, Callee) + getInlineBonuses(CS, Callee); in getInlineCost()
534 InlineCost InlineCostAnalyzer::getSpecializationCost(Function *Callee, in getSpecializationCost() argument
539 if (Callee->mayBeOverridden()) in getSpecializationCost()
543 FunctionInfo *CalleeFI = &CachedFunctionInfo[Callee]; in getSpecializationCost()
547 CalleeFI->analyzeFunction(Callee); in getSpecializationCost()
566 Function *Callee = CS.getCalledFunction(); in getInlineFudgeFactor() local
569 FunctionInfo &CalleeFI = CachedFunctionInfo[Callee]; in getInlineFudgeFactor()
573 CalleeFI.analyzeFunction(Callee); in getInlineFudgeFactor()
592 InlineCostAnalyzer::growCachedCostInfo(Function *Caller, Function *Callee) { in growCachedCostInfo() argument
606 if (Callee == 0) return; in growCachedCostInfo()
608 CodeMetrics &CalleeMetrics = CachedFunctionInfo[Callee].Metrics; in growCachedCostInfo()
635 if (CallerMetrics.NumInsts >= Callee->arg_size()) in growCachedCostInfo()
636 CallerMetrics.NumInsts -= Callee->arg_size(); in growCachedCostInfo()