X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FTransforms%2FReassociate%2Finverses.ll;h=fa1a4bd1d01ed0ad3c0137d107a24eddf47090d2;hb=9c7a988e3b014ed56e6765f9ceb68d80d56414c0;hp=0ce704698a2fbe7e778fdba0a1b337d41139ad6a;hpb=1a82ca80dda5b6dbd7b8de9fc390ae9f205be1bf;p=oota-llvm.git diff --git a/test/Transforms/Reassociate/inverses.ll b/test/Transforms/Reassociate/inverses.ll index 0ce704698a2..fa1a4bd1d01 100644 --- a/test/Transforms/Reassociate/inverses.ll +++ b/test/Transforms/Reassociate/inverses.ll @@ -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 ; [#uses=1] + %tmp.4 = xor i32 %a, -1 ; [#uses=1] + ; (A&B)&~A == 0 + %tmp.5 = and i32 %tmp.2, %tmp.4 ; [#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 ; [#uses=1] + %tmp.2 = and i32 %b, %tmp.1 ; [#uses=1] + %tmp.4 = xor i32 %a, -1 ; [#uses=1] + ; A&~A == 0 + %tmp.5 = and i32 %tmp.2, %tmp.4 ; [#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 ; [#uses=1] + %tmp.2 = add i32 %b, %tmp.1 ; [#uses=1] + %tmp.4 = sub i32 0, %a ; [#uses=1] + ; (b+(a+1234))+-a -> b+1234 + %tmp.5 = add i32 %tmp.2, %tmp.4 ; [#uses=1] + ret i32 %tmp.5 }