Print the value types in the nodes of the graph
authorChris Lattner <sabre@nondot.org>
Tue, 11 Jan 2005 22:21:04 +0000 (22:21 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 11 Jan 2005 22:21:04 +0000 (22:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19485 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp

index f342f04abc9a45cc92c5f0bbe061919f41b8f2d5..49568ee2c37394837ab8a4cd6b33a368973506cf 100644 (file)
@@ -47,6 +47,25 @@ namespace llvm {
 std::string DOTGraphTraits<SelectionDAG*>::getNodeLabel(const SDNode *Node,
                                                         const SelectionDAG *G) {
   std::string Op = Node->getOperationName();
+
+  for (unsigned i = 0, e = Node->getNumValues(); i != e; ++i) {
+    switch (Node->getValueType(i)) {
+    default: Op += ":unknownvt!"; break;
+    case MVT::Other: Op += ":ch"; break;
+    case MVT::i1:    Op += ":i1"; break;
+    case MVT::i8:    Op += ":i8"; break;
+    case MVT::i16:   Op += ":i16"; break;
+    case MVT::i32:   Op += ":i32"; break;
+    case MVT::i64:   Op += ":i64"; break;
+    case MVT::i128:  Op += ":i128"; break;
+    case MVT::f32:   Op += ":f32"; break;
+    case MVT::f64:   Op += ":f64"; break;
+    case MVT::f80:   Op += ":f80"; break;
+    case MVT::f128:  Op += ":f128"; break;
+    case MVT::isVoid: Op += ":void"; break;
+    }
+  }
+
   if (const ConstantSDNode *CSDN = dyn_cast<ConstantSDNode>(Node)) {
     Op += ": " + utostr(CSDN->getValue());
   } else if (const ConstantFPSDNode *CSDN = dyn_cast<ConstantFPSDNode>(Node)) {