Allow the addition of edge source labels
authorChris Lattner <sabre@nondot.org>
Wed, 5 Feb 2003 19:40:59 +0000 (19:40 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 5 Feb 2003 19:40:59 +0000 (19:40 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5493 91177308-0d34-0410-b5e6-96231b3b80d8

include/Support/GraphWriter.h
include/llvm/Support/GraphWriter.h

index 5481274a3f72d5885334d4ace5d15b3c3d08c338..3b7b3575544bca483c41e43b8b9763db4ea4016a 100644 (file)
@@ -18,6 +18,7 @@
 
 #include "Support/DOTGraphTraits.h"
 #include "Support/GraphTraits.h"
+#include <vector>
 #include <iostream>
 
 namespace DOT {  // Private functions...
@@ -136,7 +137,8 @@ public:
 
   /// emitSimpleNode - Outputs a simple (non-record) node
   void emitSimpleNode(const void *ID, const std::string &Attr,
-                      const std::string &Label, unsigned NumEdgeSources = 0) {
+                      const std::string &Label, unsigned NumEdgeSources = 0,
+                      const std::vector<std::string> *EdgeSourceLabels = 0) {
     O << "\tNode" << ID << "[ ";
     if (!Attr.empty())
       O << Attr << ",";
@@ -149,6 +151,7 @@ public:
       for (unsigned i = 0; i != NumEdgeSources; ++i) {
         if (i) O << "|";
         O << "<g" << i << ">";
+        if (EdgeSourceLabels) O << (*EdgeSourceLabels)[i];
       }
       O << "}}";
     }
index 5481274a3f72d5885334d4ace5d15b3c3d08c338..3b7b3575544bca483c41e43b8b9763db4ea4016a 100644 (file)
@@ -18,6 +18,7 @@
 
 #include "Support/DOTGraphTraits.h"
 #include "Support/GraphTraits.h"
+#include <vector>
 #include <iostream>
 
 namespace DOT {  // Private functions...
@@ -136,7 +137,8 @@ public:
 
   /// emitSimpleNode - Outputs a simple (non-record) node
   void emitSimpleNode(const void *ID, const std::string &Attr,
-                      const std::string &Label, unsigned NumEdgeSources = 0) {
+                      const std::string &Label, unsigned NumEdgeSources = 0,
+                      const std::vector<std::string> *EdgeSourceLabels = 0) {
     O << "\tNode" << ID << "[ ";
     if (!Attr.empty())
       O << Attr << ",";
@@ -149,6 +151,7 @@ public:
       for (unsigned i = 0; i != NumEdgeSources; ++i) {
         if (i) O << "|";
         O << "<g" << i << ">";
+        if (EdgeSourceLabels) O << (*EdgeSourceLabels)[i];
       }
       O << "}}";
     }