OSDN Git Service

Update for constant folding now generating undef and overflow correctly.
authorReid Spencer <rspencer@reidspencer.com>
Tue, 27 Feb 2007 19:26:40 +0000 (19:26 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Tue, 27 Feb 2007 19:26:40 +0000 (19:26 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34676 91177308-0d34-0410-b5e6-96231b3b80d8

test/Integer/a1.ll
test/Integer/a1.ll.out

index 6ee99f4..0404d74 100644 (file)
 @f = constant i1 sub(i1 1 , i1 -1)
 @g = constant i1 sub(i1 1 , i1 1)
 
-@h = constant i1 shl(i1 1 , i1 1)
+@h = constant i1 shl(i1 1 , i1 1)  ; undefined
 @i = constant i1 shl(i1 1 , i1 0)
 @j = constant i1 lshr(i1 1, i1 1)  ; undefined
 @m = constant i1 ashr(i1 1, i1 1)  ; undefined
 
 @n = constant i1 mul(i1 -1, i1 1)
-@o = constant i1 sdiv(i1 -1, i1 1)
-@p = constant i1 sdiv(i1 1 , i1 -1)
+@o = constant i1 sdiv(i1 -1, i1 1) ; overflow
+@p = constant i1 sdiv(i1 1 , i1 -1); overflow
 @q = constant i1 udiv(i1 -1, i1 1)
 @r = constant i1 udiv(i1 1, i1 -1)
 @s = constant i1 srem(i1 -1, i1 1) ; overflow
index aed5169..0205e3b 100644 (file)
@@ -5,13 +5,13 @@
 @e = constant i1 false         ; <i1*> [#uses=0]
 @f = constant i1 false         ; <i1*> [#uses=0]
 @g = constant i1 false         ; <i1*> [#uses=0]
-@h = constant i1 false         ; <i1*> [#uses=0]
+@h = constant i1 undef         ; <i1*> [#uses=0]
 @i = constant i1 true          ; <i1*> [#uses=0]
-@j = constant i1 false         ; <i1*> [#uses=0]
-@m = constant i1 false         ; <i1*> [#uses=0]
+@j = constant i1 undef         ; <i1*> [#uses=0]
+@m = constant i1 undef         ; <i1*> [#uses=0]
 @n = constant i1 true          ; <i1*> [#uses=0]
-@o = constant i1 true          ; <i1*> [#uses=0]
-@p = constant i1 true          ; <i1*> [#uses=0]
+@o = constant i1 sdiv (i1 true, i1 true)               ; <i1*> [#uses=0]
+@p = constant i1 sdiv (i1 true, i1 true)               ; <i1*> [#uses=0]
 @q = constant i1 true          ; <i1*> [#uses=0]
 @r = constant i1 true          ; <i1*> [#uses=0]
 @s = constant i1 srem (i1 true, i1 true)               ; <i1*> [#uses=0]