diff options
| author | Ted Kremenek <kremenek@apple.com> | 2008-03-11 19:02:40 +0000 |
|---|---|---|
| committer | Ted Kremenek <kremenek@apple.com> | 2008-03-11 19:02:40 +0000 |
| commit | d01efb547fe0841da4a3426b83845b77205f2838 (patch) | |
| tree | 819974983feac402172536022509b15fdb84ab57 /clang/Analysis/GRExprEngine.cpp | |
| parent | 827d0fcd5721c7a417e264126d4c7ada80447b9b (diff) | |
| download | bcm5719-llvm-d01efb547fe0841da4a3426b83845b77205f2838.tar.gz bcm5719-llvm-d01efb547fe0841da4a3426b83845b77205f2838.zip | |
Expanded graph-visualization to include optional pretty-printing of checker-specific state.
llvm-svn: 48238
Diffstat (limited to 'clang/Analysis/GRExprEngine.cpp')
| -rw-r--r-- | clang/Analysis/GRExprEngine.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/Analysis/GRExprEngine.cpp b/clang/Analysis/GRExprEngine.cpp index 6d1c03d537d..e2fec9f88f5 100644 --- a/clang/Analysis/GRExprEngine.cpp +++ b/clang/Analysis/GRExprEngine.cpp @@ -1554,6 +1554,7 @@ GRExprEngine::AssumeSymInt(ValueState* St, bool Assumption, #ifndef NDEBUG static GRExprEngine* GraphPrintCheckerState; static SourceManager* GraphPrintSourceManager; +static ValueState::CheckerStatePrinter* GraphCheckerStatePrinter; namespace llvm { template<> @@ -1794,7 +1795,7 @@ struct VISIBILITY_HIDDEN DOTGraphTraits<GRExprEngine::NodeTy*> : Out << "\\|StateID: " << (void*) N->getState() << "\\|"; - N->getState()->printDOT(Out); + N->getState()->printDOT(Out, GraphCheckerStatePrinter); Out << "\\l"; return Out.str(); @@ -1825,11 +1826,13 @@ void GRExprEngine::ViewGraph(bool trim) { else { GraphPrintCheckerState = this; GraphPrintSourceManager = &getContext().getSourceManager(); + GraphCheckerStatePrinter = TF->getCheckerStatePrinter(); llvm::ViewGraph(*G.roots_begin(), "GRExprEngine"); GraphPrintCheckerState = NULL; GraphPrintSourceManager = NULL; + GraphCheckerStatePrinter = NULL; } #endif } @@ -1838,6 +1841,7 @@ void GRExprEngine::ViewGraph(NodeTy** Beg, NodeTy** End) { #ifndef NDEBUG GraphPrintCheckerState = this; GraphPrintSourceManager = &getContext().getSourceManager(); + GraphCheckerStatePrinter = TF->getCheckerStatePrinter(); GRExprEngine::GraphTy* TrimmedG = G.Trim(Beg, End); @@ -1850,5 +1854,6 @@ void GRExprEngine::ViewGraph(NodeTy** Beg, NodeTy** End) { GraphPrintCheckerState = NULL; GraphPrintSourceManager = NULL; + GraphCheckerStatePrinter = NULL; #endif } |

