diff options
author | Anna Zaks <ganna@apple.com> | 2012-03-08 23:16:35 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2012-03-08 23:16:35 +0000 |
commit | 0af3e06ff666ed67569c78810a80d7a194bcc609 (patch) | |
tree | 79a7a672f4f3add7c365976bded0701b6abf6e24 /clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp | |
parent | 9a008bb7f8b2e2719cfe740018f8c94a4461b5ab (diff) | |
download | bcm5719-llvm-0af3e06ff666ed67569c78810a80d7a194bcc609.tar.gz bcm5719-llvm-0af3e06ff666ed67569c78810a80d7a194bcc609.zip |
[analyzer] Rework inlining related command line options.
- Remove -analyzer-inline-call.
- Add -analyzer-ipa=[none|inlining]
- Add -analyzer-inlining-mode to allow experimentation for
different performance tuning methods.
llvm-svn: 152351
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp')
-rw-r--r-- | clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp b/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp index 00701c9a055..821b1fbbe4b 100644 --- a/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp +++ b/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp @@ -27,21 +27,25 @@ AnalysisManager::AnalysisManager(ASTContext &ctx, DiagnosticsEngine &diags, bool vizdot, bool vizubi, AnalysisPurgeMode purge, bool eager, bool trim, - bool inlinecall, bool useUnoptimizedCFG, + bool useUnoptimizedCFG, bool addImplicitDtors, bool addInitializers, bool eagerlyTrimEGraph, + AnalysisIPAMode ipa, unsigned inlineMaxStack, - unsigned inlineMaxFunctionSize) + unsigned inlineMaxFunctionSize, + AnalysisInliningMode IMode) : AnaCtxMgr(useUnoptimizedCFG, addImplicitDtors, addInitializers), Ctx(ctx), Diags(diags), LangInfo(lang), PD(pd), CreateStoreMgr(storemgr), CreateConstraintMgr(constraintmgr), CheckerMgr(checkerMgr), Idxer(idxer), AScope(ScopeDecl), MaxNodes(maxnodes), MaxVisit(maxvisit), VisualizeEGDot(vizdot), VisualizeEGUbi(vizubi), PurgeDead(purge), - EagerlyAssume(eager), TrimGraph(trim), InlineCall(inlinecall), + EagerlyAssume(eager), TrimGraph(trim), EagerlyTrimEGraph(eagerlyTrimEGraph), + IPAMode(ipa), InlineMaxStackDepth(inlineMaxStack), - InlineMaxFunctionSize(inlineMaxFunctionSize) + InlineMaxFunctionSize(inlineMaxFunctionSize), + InliningMode(IMode) { AnaCtxMgr.getCFGBuildOptions().setAllAlwaysAdd(); } @@ -65,10 +69,11 @@ AnalysisManager::AnalysisManager(ASTContext &ctx, DiagnosticsEngine &diags, PurgeDead(ParentAM.PurgeDead), EagerlyAssume(ParentAM.EagerlyAssume), TrimGraph(ParentAM.TrimGraph), - InlineCall(ParentAM.InlineCall), EagerlyTrimEGraph(ParentAM.EagerlyTrimEGraph), + IPAMode(ParentAM.IPAMode), InlineMaxStackDepth(ParentAM.InlineMaxStackDepth), - InlineMaxFunctionSize(ParentAM.InlineMaxFunctionSize) + InlineMaxFunctionSize(ParentAM.InlineMaxFunctionSize), + InliningMode(ParentAM.InliningMode) { AnaCtxMgr.getCFGBuildOptions().setAllAlwaysAdd(); } |