summaryrefslogtreecommitdiff
path: root/test/Transforms
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2014-06-24 10:47:52 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2014-06-24 10:47:52 +0000
commit0e6156a1a2579fdb1dfc139bf09caf5a930a4052 (patch)
tree7202c9be8ad4459b0311fca08923b16d1363d114 /test/Transforms
parent9c8840362525b89774c10378317fc18e5d222ba8 (diff)
downloadllvm-0e6156a1a2579fdb1dfc139bf09caf5a930a4052.tar.gz
llvm-0e6156a1a2579fdb1dfc139bf09caf5a930a4052.tar.bz2
llvm-0e6156a1a2579fdb1dfc139bf09caf5a930a4052.tar.xz
InstCombine: Disable umul.with.overflow recognition for vectors.
It doesn't make a lot on most targets and the code isn't ready for it. PR20113. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211583 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms')
-rw-r--r--test/Transforms/InstCombine/overflow-mul.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/overflow-mul.ll b/test/Transforms/InstCombine/overflow-mul.ll
index 04019ae7bc..cbb2f5f950 100644
--- a/test/Transforms/InstCombine/overflow-mul.ll
+++ b/test/Transforms/InstCombine/overflow-mul.ll
@@ -162,3 +162,14 @@ entry:
ret i32 %retval
}
+define <4 x i32> @pr20113(<4 x i16> %a, <4 x i16> %b) {
+; CHECK-LABEL: @pr20113
+; CHECK-NOT: mul.with.overflow
+; CHECK: ret
+ %vmovl.i.i726 = zext <4 x i16> %a to <4 x i32>
+ %vmovl.i.i712 = zext <4 x i16> %b to <4 x i32>
+ %mul.i703 = mul <4 x i32> %vmovl.i.i712, %vmovl.i.i726
+ %tmp = icmp sge <4 x i32> %mul.i703, zeroinitializer
+ %vcgez.i = sext <4 x i1> %tmp to <4 x i32>
+ ret <4 x i32> %vcgez.i
+}