Use "opt < %s" instead of "opt %s" so that opt doesn't print the test
[oota-llvm.git] / test / Transforms / Reassociate / inverses.ll
index 0ce704698a2fbe7e778fdba0a1b337d41139ad6a..fa1a4bd1d01ed0ad3c0137d107a24eddf47090d2 100644 (file)
@@ -1,24 +1,28 @@
-; RUN: llvm-as < %s | opt -reassociate -dce | llvm-dis | not grep '\(and\|sub\)'
+; RUN: opt < %s -reassociate -dce -S | \
+; RUN:   not grep {\\(and\\|sub\\)}
 
-int %test1(int %a, int %b) {
-        %tmp.2 = and int %b, %a
-        %tmp.4 = xor int %a, -1
-        %tmp.5 = and int %tmp.2, %tmp.4 ; (A&B)&~A == 0
-        ret int %tmp.5
+define i32 @test1(i32 %a, i32 %b) {
+       %tmp.2 = and i32 %b, %a         ; <i32> [#uses=1]
+       %tmp.4 = xor i32 %a, -1         ; <i32> [#uses=1]
+        ; (A&B)&~A == 0
+       %tmp.5 = and i32 %tmp.2, %tmp.4         ; <i32> [#uses=1]
+       ret i32 %tmp.5
 }
 
-int %test2(int %a, int %b) {
-       %tmp.1 = and int %a, 1234
-        %tmp.2 = and int %b, %tmp.1
-        %tmp.4 = xor int %a, -1
-        %tmp.5 = and int %tmp.2, %tmp.4 ; A&~A == 0
-        ret int %tmp.5
+define i32 @test2(i32 %a, i32 %b) {
+       %tmp.1 = and i32 %a, 1234               ; <i32> [#uses=1]
+       %tmp.2 = and i32 %b, %tmp.1             ; <i32> [#uses=1]
+       %tmp.4 = xor i32 %a, -1         ; <i32> [#uses=1]
+       ; A&~A == 0
+        %tmp.5 = and i32 %tmp.2, %tmp.4                ; <i32> [#uses=1]
+       ret i32 %tmp.5
 }
 
-int %test3(int %b, int %a) {
-       %tmp.1 = add int %a, 1234
-        %tmp.2 = add int %b, %tmp.1
-        %tmp.4 = sub int 0, %a
-        %tmp.5 = add int %tmp.2, %tmp.4   ; (b+(a+1234))+-a -> b+1234
-        ret int %tmp.5
+define i32 @test3(i32 %b, i32 %a) {
+       %tmp.1 = add i32 %a, 1234               ; <i32> [#uses=1]
+       %tmp.2 = add i32 %b, %tmp.1             ; <i32> [#uses=1]
+       %tmp.4 = sub i32 0, %a          ; <i32> [#uses=1]
+        ; (b+(a+1234))+-a -> b+1234
+       %tmp.5 = add i32 %tmp.2, %tmp.4         ; <i32> [#uses=1]
+       ret i32 %tmp.5
 }