[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/Printer.cpp
Changes in directory llvm/lib/Analysis/DataStructure: Printer.cpp updated: 1.88 - 1.89 --- Log message: Remove the 'printname' argument to WriteAsOperand. It is always true, and passing false would make the asmprinter fail anyway. --- Diffs of the changes: (+2 -2) Printer.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/lib/Analysis/DataStructure/Printer.cpp diff -u llvm/lib/Analysis/DataStructure/Printer.cpp:1.88 llvm/lib/Analysis/DataStructure/Printer.cpp:1.89 --- llvm/lib/Analysis/DataStructure/Printer.cpp:1.88Tue Nov 28 18:19:40 2006 +++ llvm/lib/Analysis/DataStructure/Printer.cpp Wed Dec 6 00:16:21 2006 @@ -81,7 +81,7 @@ if (G) GlobalECs = G-getGlobalECs(); for (unsigned i = 0, e = N-getGlobalsList().size(); i != e; ++i) { -WriteAsOperand(OS, N-getGlobalsList()[i], false, true, M); +WriteAsOperand(OS, N-getGlobalsList()[i], false, M); // Figure out how many globals are equivalent to this one. if (GlobalECs) { @@ -157,7 +157,7 @@ for (DSGraph::ScalarMapTy::const_iterator I = VM.begin(); I != VM.end();++I) if (!isaGlobalValue(I-first)) { std::stringstream OS; -WriteAsOperand(OS, I-first, false, true, CurMod); +WriteAsOperand(OS, I-first, false, CurMod); GW.emitSimpleNode(I-first, , OS.str()); // Add edge from return node to real destination ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/Printer.cpp
Changes in directory llvm/lib/Analysis/DataStructure: Printer.cpp updated: 1.86 - 1.87 --- Log message: Needed iostream for now. --- Diffs of the changes: (+1 -0) Printer.cpp |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Analysis/DataStructure/Printer.cpp diff -u llvm/lib/Analysis/DataStructure/Printer.cpp:1.86 llvm/lib/Analysis/DataStructure/Printer.cpp:1.87 --- llvm/lib/Analysis/DataStructure/Printer.cpp:1.86Mon Oct 2 07:26:53 2006 +++ llvm/lib/Analysis/DataStructure/Printer.cpp Fri Nov 17 03:44:28 2006 @@ -21,6 +21,7 @@ #include llvm/Support/GraphWriter.h #include llvm/ADT/Statistic.h #include llvm/Config/config.h +#include iostream #include fstream #include sstream using namespace llvm; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/Printer.cpp
Changes in directory llvm/lib/Analysis/DataStructure: Printer.cpp updated: 1.85 - 1.86 --- Log message: Add ability to annotate (color) nodes in a viewGraph. --- Diffs of the changes: (+1 -1) Printer.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Analysis/DataStructure/Printer.cpp diff -u llvm/lib/Analysis/DataStructure/Printer.cpp:1.85 llvm/lib/Analysis/DataStructure/Printer.cpp:1.86 --- llvm/lib/Analysis/DataStructure/Printer.cpp:1.85Tue Jun 27 11:49:46 2006 +++ llvm/lib/Analysis/DataStructure/Printer.cpp Mon Oct 2 07:26:53 2006 @@ -112,7 +112,7 @@ return getCaption(Node, Graph); } - static std::string getNodeAttributes(const DSNode *N) { + static std::string getNodeAttributes(const DSNode *N, const DSGraph *Graph) { return shape=Mrecord; } ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/Printer.cpp
Changes in directory llvm/lib/Analysis/DataStructure: Printer.cpp updated: 1.84 - 1.85 --- Log message: For PR801: http://llvm.org/PR801 : Refactor the Graph writing code to use a common implementation which is now in lib/Support/GraphWriter.cpp. This completes the PR. Patch by Anton Korobeynikov. Thanks, Anton! --- Diffs of the changes: (+1 -86) Printer.cpp | 87 1 files changed, 1 insertion(+), 86 deletions(-) Index: llvm/lib/Analysis/DataStructure/Printer.cpp diff -u llvm/lib/Analysis/DataStructure/Printer.cpp:1.84 llvm/lib/Analysis/DataStructure/Printer.cpp:1.85 --- llvm/lib/Analysis/DataStructure/Printer.cpp:1.84Mon Jun 5 10:44:46 2006 +++ llvm/lib/Analysis/DataStructure/Printer.cpp Tue Jun 27 11:49:46 2006 @@ -19,8 +19,6 @@ #include llvm/Assembly/Writer.h #include llvm/Support/CommandLine.h #include llvm/Support/GraphWriter.h -#include llvm/System/Path.h -#include llvm/System/Program.h #include llvm/ADT/Statistic.h #include llvm/Config/config.h #include fstream @@ -259,90 +257,7 @@ /// then cleanup. For use from the debugger. /// void DSGraph::viewGraph() const { - char pathsuff[9]; - - sprintf(pathsuff, %06u, unsigned(rand())); - - sys::Path TempDir = sys::Path::GetTemporaryDirectory(); - sys::Path Filename = TempDir; - Filename.appendComponent(ds.tempgraph. + std::string(pathsuff) + .dot); - std::cerr Writing ' Filename '... ; - std::ofstream F(Filename.c_str()); - - if (!F.good()) { -std::cerrerror opening file for writing!\n; -return; - } - - print(F); - F.close(); - std::cerr \n; - -#if HAVE_GRAPHVIZ - sys::Path Graphviz(LLVM_PATH_GRAPHVIZ); - std::vectorconst char* args; - args.push_back(Graphviz.c_str()); - args.push_back(Filename.c_str()); - args.push_back(0); - - std::cerr Running 'Graphviz' program... std::flush; - if (sys::Program::ExecuteAndWait(Graphviz, args[0])) { -std::cerr Error viewing graph: 'Graphviz' not in path?\n; - } else { -Filename.eraseFromDisk(); -return; - } -#elif (HAVE_GV HAVE_DOT) - sys::Path PSFilename = TempDir; - PSFilename.appendComponent(std::string(ds.tempgraph) + . + pathsuff + .ps); - - sys::Path dot(LLVM_PATH_DOT); - std::vectorconst char* args; - args.push_back(dot.c_str()); - args.push_back(-Tps); - args.push_back(-Nfontname=Courier); - args.push_back(-Gsize=7.5,10); - args.push_back(Filename.c_str()); - args.push_back(-o); - args.push_back(PSFilename.c_str()); - args.push_back(0); - - std::cerr Running 'dot' program... std::flush; - if (sys::Program::ExecuteAndWait(dot, args[0])) { -std::cerr Error viewing graph: 'dot' not in path?\n; - } else { -std::cerr \n; - -sys::Path gv(LLVM_PATH_GV); -args.clear(); -args.push_back(gv.c_str()); -args.push_back(PSFilename.c_str()); -args.push_back(0); - -sys::Program::ExecuteAndWait(gv, args[0]); - } - Filename.eraseFromDisk(); - PSFilename.eraseFromDisk(); - return; -#elif HAVE_DOTTY - sys::Path dotty(LLVM_PATH_DOTTY); - std::vectorconst char* args; - args.push_back(Filename.c_str()); - args.push_back(0); - - std::cerr Running 'dotty' program... std::flush; - if (sys::Program::ExecuteAndWait(dotty, args[0])) { -std::cerr Error viewing graph: 'dotty' not in path?\n; - } else { -#ifndef __MINGW32__ // Dotty spawns another app and doesn't wait until it returns -Filename.eraseFromDisk(); -#endif -return; - } -#endif - - Filename.eraseFromDisk(); - TempDir.eraseFromDisk(true); + ViewGraph(this, ds.tempgraph, DataStructures); } ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/Printer.cpp
Changes in directory llvm/lib/Analysis/DataStructure: Printer.cpp updated: 1.83 - 1.84 --- Log message: For PR798: http://llvm.cs.uiuc.edu/PR798 : Add support for Graphviz. Patch contributed by Anton Korobeynikov. --- Diffs of the changes: (+82 -6) Printer.cpp | 88 +++- 1 files changed, 82 insertions(+), 6 deletions(-) Index: llvm/lib/Analysis/DataStructure/Printer.cpp diff -u llvm/lib/Analysis/DataStructure/Printer.cpp:1.83 llvm/lib/Analysis/DataStructure/Printer.cpp:1.84 --- llvm/lib/Analysis/DataStructure/Printer.cpp:1.83Thu Apr 21 16:07:28 2005 +++ llvm/lib/Analysis/DataStructure/Printer.cpp Mon Jun 5 10:44:46 2006 @@ -19,7 +19,10 @@ #include llvm/Assembly/Writer.h #include llvm/Support/CommandLine.h #include llvm/Support/GraphWriter.h +#include llvm/System/Path.h +#include llvm/System/Program.h #include llvm/ADT/Statistic.h +#include llvm/Config/config.h #include fstream #include sstream using namespace llvm; @@ -256,17 +259,90 @@ /// then cleanup. For use from the debugger. /// void DSGraph::viewGraph() const { - std::ofstream F(/tmp/tempgraph.dot); + char pathsuff[9]; + + sprintf(pathsuff, %06u, unsigned(rand())); + + sys::Path TempDir = sys::Path::GetTemporaryDirectory(); + sys::Path Filename = TempDir; + Filename.appendComponent(ds.tempgraph. + std::string(pathsuff) + .dot); + std::cerr Writing ' Filename '... ; + std::ofstream F(Filename.c_str()); + if (!F.good()) { -std::cerr Error opening '/tmp/tempgraph.dot' for temporary graph!\n; +std::cerrerror opening file for writing!\n; return; } + print(F); F.close(); - if (system(dot -Tps -Gsize=10,7.5 -Grotate=90 /tmp/tempgraph.dot /tmp/tempgraph.ps)) -std::cerr Error running dot: 'dot' not in path?\n; - system(gv /tmp/tempgraph.ps); - system(rm /tmp/tempgraph.dot /tmp/tempgraph.ps); + std::cerr \n; + +#if HAVE_GRAPHVIZ + sys::Path Graphviz(LLVM_PATH_GRAPHVIZ); + std::vectorconst char* args; + args.push_back(Graphviz.c_str()); + args.push_back(Filename.c_str()); + args.push_back(0); + + std::cerr Running 'Graphviz' program... std::flush; + if (sys::Program::ExecuteAndWait(Graphviz, args[0])) { +std::cerr Error viewing graph: 'Graphviz' not in path?\n; + } else { +Filename.eraseFromDisk(); +return; + } +#elif (HAVE_GV HAVE_DOT) + sys::Path PSFilename = TempDir; + PSFilename.appendComponent(std::string(ds.tempgraph) + . + pathsuff + .ps); + + sys::Path dot(LLVM_PATH_DOT); + std::vectorconst char* args; + args.push_back(dot.c_str()); + args.push_back(-Tps); + args.push_back(-Nfontname=Courier); + args.push_back(-Gsize=7.5,10); + args.push_back(Filename.c_str()); + args.push_back(-o); + args.push_back(PSFilename.c_str()); + args.push_back(0); + + std::cerr Running 'dot' program... std::flush; + if (sys::Program::ExecuteAndWait(dot, args[0])) { +std::cerr Error viewing graph: 'dot' not in path?\n; + } else { +std::cerr \n; + +sys::Path gv(LLVM_PATH_GV); +args.clear(); +args.push_back(gv.c_str()); +args.push_back(PSFilename.c_str()); +args.push_back(0); + +sys::Program::ExecuteAndWait(gv, args[0]); + } + Filename.eraseFromDisk(); + PSFilename.eraseFromDisk(); + return; +#elif HAVE_DOTTY + sys::Path dotty(LLVM_PATH_DOTTY); + std::vectorconst char* args; + args.push_back(Filename.c_str()); + args.push_back(0); + + std::cerr Running 'dotty' program... std::flush; + if (sys::Program::ExecuteAndWait(dotty, args[0])) { +std::cerr Error viewing graph: 'dotty' not in path?\n; + } else { +#ifndef __MINGW32__ // Dotty spawns another app and doesn't wait until it returns +Filename.eraseFromDisk(); +#endif +return; + } +#endif + + Filename.eraseFromDisk(); + TempDir.eraseFromDisk(true); } ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits