]> granicus.if.org Git - llvm/commitdiff
[CVP] Add vector saturating add test; NFC
authorNikita Popov <nikita.ppv@gmail.com>
Fri, 31 May 2019 20:42:13 +0000 (20:42 +0000)
committerNikita Popov <nikita.ppv@gmail.com>
Fri, 31 May 2019 20:42:13 +0000 (20:42 +0000)
Extra test for the assertion failure from D62703.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@362262 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/CorrelatedValuePropagation/overflows.ll

index a0d268c059f9bb35447901b110eab1fb98831dc5..66cd85abe9751d52e46e2f9d2a35b57737542b8d 100644 (file)
@@ -27,6 +27,7 @@ declare i8 @llvm.uadd.sat.i8(i8, i8)
 declare i8 @llvm.sadd.sat.i8(i8, i8)
 declare i8 @llvm.usub.sat.i8(i8, i8)
 declare i8 @llvm.ssub.sat.i8(i8, i8)
+declare <2 x i8> @llvm.uadd.sat.v2i8(<2 x i8>, <2 x i8>)
 
 declare void @llvm.trap()
 
@@ -834,3 +835,12 @@ cont:
   %res = call i8 @llvm.ssub.sat.i8(i8 %x, i8 20)
   ret i8 %res
 }
+
+define <2 x i8> @uadd_sat_vec(<2 x i8> %a) {
+; CHECK-LABEL: @uadd_sat_vec(
+; CHECK-NEXT:    [[ADD:%.*]] = call <2 x i8> @llvm.uadd.sat.v2i8(<2 x i8> [[A:%.*]], <2 x i8> <i8 1, i8 1>)
+; CHECK-NEXT:    ret <2 x i8> [[ADD]]
+;
+  %add = call <2 x i8> @llvm.uadd.sat.v2i8(<2 x i8> %a, <2 x i8> <i8 1, i8 1>)
+  ret <2 x i8> %add
+}