diff options
author | Ted Kremenek <kremenek@apple.com> | 2010-08-03 00:09:51 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2010-08-03 00:09:51 +0000 |
commit | 9b823e8e1ccb8a2cb49923bad22a80ca96f41f92 (patch) | |
tree | 568619e091819d2b736a6b64ea94b0b11ea60a90 /lib/Analysis/AnalysisContext.cpp | |
parent | ad5a894df1841698c824381b414630799adc26ca (diff) |
Add -cc1 option '-unoptimized-cfg' to toggle using a CFG (for static analysis) that doesn't prune CFG edges.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110087 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/AnalysisContext.cpp')
-rw-r--r-- | lib/Analysis/AnalysisContext.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Analysis/AnalysisContext.cpp b/lib/Analysis/AnalysisContext.cpp index ef0a50f98e..ced4f1dd2e 100644 --- a/lib/Analysis/AnalysisContext.cpp +++ b/lib/Analysis/AnalysisContext.cpp @@ -54,6 +54,9 @@ const ImplicitParamDecl *AnalysisContext::getSelfDecl() const { } CFG *AnalysisContext::getCFG() { + if (UseUnoptimizedCFG) + return getUnoptimizedCFG(); + if (!builtCFG) { cfg = CFG::buildCFG(D, getBody(), &D->getASTContext(), true, AddEHEdges); // Even when the cfg is not successfully built, we don't @@ -98,7 +101,7 @@ AnalysisContext *AnalysisContextManager::getContext(const Decl *D, idx::TranslationUnit *TU) { AnalysisContext *&AC = Contexts[D]; if (!AC) - AC = new AnalysisContext(D, TU); + AC = new AnalysisContext(D, TU, UseUnoptimizedCFG); return AC; } |