summaryrefslogtreecommitdiffstats
path: root/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2012-03-02 19:05:03 +0000
committerAnna Zaks <ganna@apple.com>2012-03-02 19:05:03 +0000
commit265087721ae2938b3886d68898e5eec5bd4a3816 (patch)
tree8c4ff80551678f1d0b9d09d76d43a31d4de2a09b /clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
parent242d9838c6e203f927a38292c9c303a846a284ad (diff)
downloadbcm5719-llvm-265087721ae2938b3886d68898e5eec5bd4a3816.tar.gz
bcm5719-llvm-265087721ae2938b3886d68898e5eec5bd4a3816.zip
[analyzer] Bound the size of the functions being inlined + provide
command line options for inlining tuning. This adds the option for stack depth bound as well as function size bound. + minor doxygenification llvm-svn: 151930
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp')
-rw-r--r--clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp b/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
index af18eff8991..00701c9a055 100644
--- a/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
+++ b/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
@@ -29,7 +29,9 @@ AnalysisManager::AnalysisManager(ASTContext &ctx, DiagnosticsEngine &diags,
bool eager, bool trim,
bool inlinecall, bool useUnoptimizedCFG,
bool addImplicitDtors, bool addInitializers,
- bool eagerlyTrimEGraph)
+ bool eagerlyTrimEGraph,
+ unsigned inlineMaxStack,
+ unsigned inlineMaxFunctionSize)
: AnaCtxMgr(useUnoptimizedCFG, addImplicitDtors, addInitializers),
Ctx(ctx), Diags(diags), LangInfo(lang), PD(pd),
CreateStoreMgr(storemgr), CreateConstraintMgr(constraintmgr),
@@ -37,7 +39,9 @@ AnalysisManager::AnalysisManager(ASTContext &ctx, DiagnosticsEngine &diags,
AScope(ScopeDecl), MaxNodes(maxnodes), MaxVisit(maxvisit),
VisualizeEGDot(vizdot), VisualizeEGUbi(vizubi), PurgeDead(purge),
EagerlyAssume(eager), TrimGraph(trim), InlineCall(inlinecall),
- EagerlyTrimEGraph(eagerlyTrimEGraph)
+ EagerlyTrimEGraph(eagerlyTrimEGraph),
+ InlineMaxStackDepth(inlineMaxStack),
+ InlineMaxFunctionSize(inlineMaxFunctionSize)
{
AnaCtxMgr.getCFGBuildOptions().setAllAlwaysAdd();
}
@@ -62,7 +66,9 @@ AnalysisManager::AnalysisManager(ASTContext &ctx, DiagnosticsEngine &diags,
EagerlyAssume(ParentAM.EagerlyAssume),
TrimGraph(ParentAM.TrimGraph),
InlineCall(ParentAM.InlineCall),
- EagerlyTrimEGraph(ParentAM.EagerlyTrimEGraph)
+ EagerlyTrimEGraph(ParentAM.EagerlyTrimEGraph),
+ InlineMaxStackDepth(ParentAM.InlineMaxStackDepth),
+ InlineMaxFunctionSize(ParentAM.InlineMaxFunctionSize)
{
AnaCtxMgr.getCFGBuildOptions().setAllAlwaysAdd();
}
OpenPOWER on IntegriCloud