diff options
Diffstat (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp')
-rw-r--r-- | llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp b/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp index 26ff84f..d84cfbf 100644 --- a/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp +++ b/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp @@ -80,6 +80,8 @@ static cl::opt<std::string> ModuleSummaryDotFile( "module-summary-dot-file", cl::Hidden, cl::value_desc("filename"), cl::desc("File to emit dot graph of new summary into")); +extern cl::opt<bool> ScalePartialSampleProfileWorkingSetSize; + // Walk through the operands of a given User via worklist iteration and populate // the set of GlobalValue references encountered. Invoked either on an // Instruction or a GlobalVariable (which walks its initializer). @@ -477,7 +479,9 @@ static void computeFunctionSummary( } } } - Index.addBlockCount(F.size()); + + if (PSI->hasPartialSampleProfile() && ScalePartialSampleProfileWorkingSetSize) + Index.addBlockCount(F.size()); std::vector<ValueInfo> Refs; if (IsThinLTO) { |