diff options
Diffstat (limited to 'llvm/test/Transforms/Reassociate/mulfactor2.ll')
-rw-r--r-- | llvm/test/Transforms/Reassociate/mulfactor2.ll | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/test/Transforms/Reassociate/mulfactor2.ll b/llvm/test/Transforms/Reassociate/mulfactor2.ll new file mode 100644 index 00000000000..062e3af4f50 --- /dev/null +++ b/llvm/test/Transforms/Reassociate/mulfactor2.ll @@ -0,0 +1,13 @@ +; This should turn into one multiply and one add. + +; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -reassociate -instcombine | llvm-dis | grep mul | wc -l | grep 1 && +; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -reassociate -instcombine | llvm-dis | grep add | wc -l | grep 1 +int %main(int %t) { + %tmp.3 = mul int %t, 12 ; <int> [#uses=1] + %tmp.4 = add int %tmp.3, 5 ; <int> [#uses=1] + %tmp.6 = mul int %t, 6 ; <int> [#uses=1] + %tmp.8 = mul int %tmp.4, 3 ; <int> [#uses=1] + %tmp.9 = add int %tmp.8, %tmp.6 ; <int> [#uses=1] + ret int %tmp.9 +} + |