include alignment and volatility information in -view-*-dags output


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46347 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp
index 588fc6a..5cf3b04 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp
@@ -164,13 +164,20 @@
       break;
     }
     if (doExt)
-      Op = Op + MVT::getValueTypeString(LD->getLoadedVT()) + ">";
-
+      Op += MVT::getValueTypeString(LD->getLoadedVT()) + ">";
+    if (LD->isVolatile())
+      Op += "<V>";
     Op += LD->getIndexedModeName(LD->getAddressingMode());
+    if (LD->getAlignment() > 1)
+      Op += " A=" + utostr(LD->getAlignment());
   } else if (const StoreSDNode *ST = dyn_cast<StoreSDNode>(Node)) {
     if (ST->isTruncatingStore())
-      Op = Op + "<trunc " + MVT::getValueTypeString(ST->getStoredVT()) + ">";
+      Op += "<trunc " + MVT::getValueTypeString(ST->getStoredVT()) + ">";
+    if (ST->isVolatile())
+      Op += "<V>";
     Op += ST->getIndexedModeName(ST->getAddressingMode());
+    if (ST->getAlignment() > 1)
+      Op += " A=" + utostr(ST->getAlignment());
   }
 
 #if 0