[llvm] r364069 - [NFC] Added more tests for D63652
David Bolvansky via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 21 09:14:13 PDT 2019
Author: xbolva00
Date: Fri Jun 21 09:14:13 2019
New Revision: 364069
URL: http://llvm.org/viewvc/llvm-project?rev=364069&view=rev
Log:
[NFC] Added more tests for D63652
Modified:
llvm/trunk/test/Transforms/InstCombine/shl-sub.ll
Modified: llvm/trunk/test/Transforms/InstCombine/shl-sub.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/shl-sub.ll?rev=364069&r1=364068&r2=364069&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/shl-sub.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/shl-sub.ll Fri Jun 21 09:14:13 2019
@@ -148,5 +148,38 @@ define <2 x i64> @bad_shl_sub_i64_vec(<2
ret <2 x i64> %r
}
+define <3 x i64> @shl_sub_i64_vec_undef0(<3 x i64> %x) {
+; CHECK-LABEL: @shl_sub_i64_vec_undef0(
+; CHECK-NEXT: [[S:%.*]] = sub <3 x i64> <i64 63, i64 undef, i64 63>, [[X:%.*]]
+; CHECK-NEXT: [[R:%.*]] = shl <3 x i64> <i64 1, i64 1, i64 1>, [[S]]
+; CHECK-NEXT: ret <3 x i64> [[R]]
+;
+ %s = sub <3 x i64> <i64 63, i64 undef, i64 63>, %x
+ %r = shl <3 x i64> <i64 1, i64 1, i64 1>, %s
+ ret <3 x i64> %r
+}
+
+define <3 x i64> @shl_sub_i64_vec_undef1(<3 x i64> %x) {
+; CHECK-LABEL: @shl_sub_i64_vec_undef1(
+; CHECK-NEXT: [[S:%.*]] = sub <3 x i64> <i64 63, i64 undef, i64 63>, [[X:%.*]]
+; CHECK-NEXT: [[R:%.*]] = shl <3 x i64> <i64 1, i64 undef, i64 1>, [[S]]
+; CHECK-NEXT: ret <3 x i64> [[R]]
+;
+ %s = sub <3 x i64> <i64 63, i64 undef, i64 63>, %x
+ %r = shl <3 x i64> <i64 1, i64 undef, i64 1>, %s
+ ret <3 x i64> %r
+}
+
+define <3 x i64> @shl_sub_i64_vec_undef2(<3 x i64> %x) {
+; CHECK-LABEL: @shl_sub_i64_vec_undef2(
+; CHECK-NEXT: [[S:%.*]] = sub <3 x i64> <i64 63, i64 undef, i64 63>, [[X:%.*]]
+; CHECK-NEXT: [[R:%.*]] = shl <3 x i64> <i64 1, i64 undef, i64 1>, [[S]]
+; CHECK-NEXT: ret <3 x i64> [[R]]
+;
+ %s = sub <3 x i64> <i64 63, i64 undef, i64 63>, %x
+ %r = shl <3 x i64> <i64 1, i64 undef, i64 1>, %s
+ ret <3 x i64> %r
+}
+
declare void @use(i32)
More information about the llvm-commits
mailing list