summaryrefslogtreecommitdiff
path: root/test/Transforms/Reassociate
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-01 00:50:00 +0000
committerChris Lattner <sabre@nondot.org>2010-01-01 00:50:00 +0000
commit75954e0bbd83d7f9f95ac82b46c92cb9eec25870 (patch)
treea6000637081e8228e1a411d60ad67304412c69da /test/Transforms/Reassociate
parent371da99e647c8699b5ee3534a909d934d73554fd (diff)
downloadllvm-75954e0bbd83d7f9f95ac82b46c92cb9eec25870.tar.gz
llvm-75954e0bbd83d7f9f95ac82b46c92cb9eec25870.tar.bz2
llvm-75954e0bbd83d7f9f95ac82b46c92cb9eec25870.tar.xz
test case we alredy get right.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92380 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/Reassociate')
-rw-r--r--test/Transforms/Reassociate/basictest.ll12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/Transforms/Reassociate/basictest.ll b/test/Transforms/Reassociate/basictest.ll
index 0f137dc8ad..ba0c9f210f 100644
--- a/test/Transforms/Reassociate/basictest.ll
+++ b/test/Transforms/Reassociate/basictest.ll
@@ -179,3 +179,15 @@ define i32 @test12(i32 %X) {
; CHECK-NEXT: ret i32
}
+define i32 @test13(i32 %X1, i32 %X2, i32 %X3) {
+ %A = sub i32 0, %X1
+ %B = mul i32 %A, %X2 ; -X1*X2
+ %C = mul i32 %X1, %X3 ; X1*X3
+ %D = add i32 %B, %C ; -X1*X2 + X1*X3 -> X1*(X3-X2)
+ ret i32 %D
+; CHECK: @test13
+; CHECK-NEXT: sub i32 %X3, %X2
+; CHECK-NEXT: mul i32 {{.*}}, %X1
+; CHECK-NEXT: ret i32
+}
+