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 | 66253352131e3e7a22b3bfd0e180607aa2bfb988 (patch) | |
tree | f58c3f6850167ab39a0bb528a7e4adab986d6585 /lib/StaticAnalyzer/Core/AnalysisManager.cpp | |
parent | d2776613703a516f107decc06b38a0b60a10542c (diff) |
[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.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152351 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Core/AnalysisManager.cpp')
-rw-r--r-- | lib/StaticAnalyzer/Core/AnalysisManager.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/lib/StaticAnalyzer/Core/AnalysisManager.cpp b/lib/StaticAnalyzer/Core/AnalysisManager.cpp index 00701c9a05..821b1fbbe4 100644 --- a/lib/StaticAnalyzer/Core/AnalysisManager.cpp +++ b/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(); } |