diff options
Diffstat (limited to 'tools/llvmc2/CompilationGraph.cpp')
-rw-r--r-- | tools/llvmc2/CompilationGraph.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/tools/llvmc2/CompilationGraph.cpp b/tools/llvmc2/CompilationGraph.cpp index 2dd8812827..90e88bb8dd 100644 --- a/tools/llvmc2/CompilationGraph.cpp +++ b/tools/llvmc2/CompilationGraph.cpp @@ -112,7 +112,7 @@ void CompilationGraph::insertEdge(const std::string& A, Edge* E) { // Pass input file through the chain until we bump into a Join node or // a node that says that it is the last. const JoinTool* -CompilationGraph::PassThroughGraph (sys::Path& In, sys::Path Out, +CompilationGraph::PassThroughGraph (sys::Path& In, const sys::Path& TempDir) const { bool Last = false; JoinTool* ret = 0; @@ -124,6 +124,7 @@ CompilationGraph::PassThroughGraph (sys::Path& In, sys::Path Out, const Node* N = &getNode(*TV.begin()); while(!Last) { + sys::Path Out; Tool* CurTool = N->ToolPtr.getPtr(); if (CurTool->IsJoin()) { @@ -162,14 +163,13 @@ CompilationGraph::PassThroughGraph (sys::Path& In, sys::Path Out, int CompilationGraph::Build (const sys::Path& TempDir) const { const JoinTool* JT = 0; - sys::Path In, Out; // For each input file for (cl::list<std::string>::const_iterator B = InputFilenames.begin(), E = InputFilenames.end(); B != E; ++B) { - In = sys::Path(*B); + sys::Path In = sys::Path(*B); - const JoinTool* NewJoin = PassThroughGraph(In, Out, TempDir); + const JoinTool* NewJoin = PassThroughGraph(In, TempDir); if (JT && NewJoin && JT != NewJoin) throw std::runtime_error("Graphs with multiple Join nodes" "are not yet supported!"); @@ -178,6 +178,7 @@ int CompilationGraph::Build (const sys::Path& TempDir) const { } if (JT) { + sys::Path Out; // If the final output name is empty, set it to "a.out" if (!OutputFilename.empty()) { Out = sys::Path(OutputFilename); @@ -194,6 +195,8 @@ int CompilationGraph::Build (const sys::Path& TempDir) const { return 0; } +// Code related to graph visualization. + namespace llvm { template <> struct DOTGraphTraits<llvmcc::CompilationGraph*> |