Make SCEV print <nsw><nuw> for Add/MulExpr.
authorAndrew Trick <atrick@apple.com>
Tue, 29 Nov 2011 02:06:35 +0000 (02:06 +0000)
committerAndrew Trick <atrick@apple.com>
Tue, 29 Nov 2011 02:06:35 +0000 (02:06 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145364 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/ScalarEvolution.cpp

index 622b214aed5e5b7b5a5d85c56583a5a2e63fad53..a054801fb88d0c63e9ef476ac74b4564486198ce 100644 (file)
@@ -188,6 +188,14 @@ void SCEV::print(raw_ostream &OS) const {
         OS << OpStr;
     }
     OS << ")";
+    switch (NAry->getSCEVType()) {
+    case scAddExpr:
+    case scMulExpr:
+      if (NAry->getNoWrapFlags(FlagNUW))
+        OS << "<nuw>";
+      if (NAry->getNoWrapFlags(FlagNSW))
+        OS << "<nsw>";
+    }
     return;
   }
   case scUDivExpr: {