filecheckize
[oota-llvm.git] / test / Transforms / Reassociate / mul-factor3.ll
index 773569e3dfb807528c82add732f2ad433d9b7aaa..4d0517618e00ee48e0d5be83e4909f85386e9670 100644 (file)
@@ -1,14 +1,15 @@
 ; This should be one add and two multiplies.
 
-; RUN: llvm-as < %s | opt -reassociate -instcombine | llvm-dis | grep mul | wc -l | grep 2 &&
-; RUN: llvm-as < %s | opt -reassociate -instcombine | llvm-dis | grep add | wc -l | grep 1
+; RUN: opt < %s -reassociate -instcombine -S > %t
+; RUN: grep mul %t | count 2
+; RUN: grep add %t | count 1
 
-int %test(int %A, int %B, int %C) {
-       %aa = mul int %A, %A
-       %aab = mul int %aa, %B
-
-       %ac = mul int %A, %C
-       %aac = mul int %ac, %A
-       %r = add int %aab, %aac
-       ret int %r
+define i32 @test(i32 %A, i32 %B, i32 %C) {
+       %aa = mul i32 %A, %A            ; <i32> [#uses=1]
+       %aab = mul i32 %aa, %B          ; <i32> [#uses=1]
+       %ac = mul i32 %A, %C            ; <i32> [#uses=1]
+       %aac = mul i32 %ac, %A          ; <i32> [#uses=1]
+       %r = add i32 %aab, %aac         ; <i32> [#uses=1]
+       ret i32 %r
 }
+