diff options
| author | Anna Zaks <ganna@apple.com> | 2012-03-02 19:05:03 +0000 |
|---|---|---|
| committer | Anna Zaks <ganna@apple.com> | 2012-03-02 19:05:03 +0000 |
| commit | 265087721ae2938b3886d68898e5eec5bd4a3816 (patch) | |
| tree | 8c4ff80551678f1d0b9d09d76d43a31d4de2a09b /clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp | |
| parent | 242d9838c6e203f927a38292c9c303a846a284ad (diff) | |
| download | bcm5719-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.cpp | 12 |
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(); } |

