summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2018-01-24 14:59:02 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2018-01-24 14:59:02 +0000
commitf15886eb30776345ff81c37c7a7449c32330af29 (patch)
tree87f0e378dd84fdfd3995454ebdd105ce2494ecd4 /llvm/test
parentd53504e37999771f4ce621c081cc3da42ea1c84d (diff)
downloadbcm5719-llvm-f15886eb30776345ff81c37c7a7449c32330af29.tar.gz
bcm5719-llvm-f15886eb30776345ff81c37c7a7449c32330af29.zip
Regenerate shuffle sink test
llvm-svn: 323328
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/Transforms/CodeGenPrepare/X86/x86-shuffle-sink.ll67
1 files changed, 39 insertions, 28 deletions
diff --git a/llvm/test/Transforms/CodeGenPrepare/X86/x86-shuffle-sink.ll b/llvm/test/Transforms/CodeGenPrepare/X86/x86-shuffle-sink.ll
index 45c0b6e155a..74e73e87619 100644
--- a/llvm/test/Transforms/CodeGenPrepare/X86/x86-shuffle-sink.ll
+++ b/llvm/test/Transforms/CodeGenPrepare/X86/x86-shuffle-sink.ll
@@ -29,34 +29,45 @@ if_false:
}
define <8 x i16> @test_16bit(<8 x i16> %lhs, <8 x i16> %tmp, i1 %tst) {
-; CHECK-SSE2-LABEL: @test_16bit
-; CHECK-SSE2: if_true:
-; CHECK-SSE2-NOT: shufflevector
-; CHECK-SSE2: if_false:
-; CHECK-SSE2: [[SPLAT:%[0-9a-zA-Z_]+]] = shufflevector
-; CHECK-SSE2: shl <8 x i16> %lhs, [[SPLAT]]
-
-; CHECK-AVX2-LABEL: @test_16bit
-; CHECK-AVX2: if_true:
-; CHECK-AVX2-NOT: shufflevector
-; CHECK-AVX2: if_false:
-; CHECK-AVX2: [[SPLAT:%[0-9a-zA-Z_]+]] = shufflevector
-; CHECK-AVX2: shl <8 x i16> %lhs, [[SPLAT]]
-
-; CHECK-XOP-LABEL: @test_16bit
-; CHECK-XOP: if_true:
-; CHECK-XOP-NOT: shufflevector
-; CHECK-XOP: if_false:
-; CHECK-XOP: [[SPLAT:%[0-9a-zA-Z_]+]] = shufflevector
-; CHECK-XOP: shl <8 x i16> %lhs, [[SPLAT]]
-
-; CHECK-AVX512BW-LABEL: @test_16bit
-; CHECK-AVX512BW: [[SPLAT:%[0-9a-zA-Z_]+]] = shufflevector
-; CHECK-AVX512BW: if_true:
-; CHECK-AVX512BW-NOT: shufflevector
-; CHECK-AVX512BW: if_false:
-; CHECK-AVX512BW-NOT: shufflevector
-; CHECK-AVX512BW: shl <8 x i16> %lhs, [[SPLAT]]
+; CHECK-SSE2-LABEL: @test_16bit(
+; CHECK-SSE2-NEXT: [[MASK:%.*]] = shufflevector <8 x i16> [[TMP:%.*]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-SSE2-NEXT: br i1 [[TST:%.*]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
+; CHECK-SSE2: if_true:
+; CHECK-SSE2-NEXT: ret <8 x i16> [[MASK]]
+; CHECK-SSE2: if_false:
+; CHECK-SSE2-NEXT: [[TMP1:%.*]] = shufflevector <8 x i16> [[TMP]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-SSE2-NEXT: [[RES:%.*]] = shl <8 x i16> [[LHS:%.*]], [[TMP1]]
+; CHECK-SSE2-NEXT: ret <8 x i16> [[RES]]
+;
+; CHECK-XOP-LABEL: @test_16bit(
+; CHECK-XOP-NEXT: [[MASK:%.*]] = shufflevector <8 x i16> [[TMP:%.*]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-XOP-NEXT: br i1 [[TST:%.*]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
+; CHECK-XOP: if_true:
+; CHECK-XOP-NEXT: ret <8 x i16> [[MASK]]
+; CHECK-XOP: if_false:
+; CHECK-XOP-NEXT: [[TMP1:%.*]] = shufflevector <8 x i16> [[TMP]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-XOP-NEXT: [[RES:%.*]] = shl <8 x i16> [[LHS:%.*]], [[TMP1]]
+; CHECK-XOP-NEXT: ret <8 x i16> [[RES]]
+;
+; CHECK-AVX2-LABEL: @test_16bit(
+; CHECK-AVX2-NEXT: [[MASK:%.*]] = shufflevector <8 x i16> [[TMP:%.*]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-AVX2-NEXT: br i1 [[TST:%.*]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
+; CHECK-AVX2: if_true:
+; CHECK-AVX2-NEXT: ret <8 x i16> [[MASK]]
+; CHECK-AVX2: if_false:
+; CHECK-AVX2-NEXT: [[TMP1:%.*]] = shufflevector <8 x i16> [[TMP]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-AVX2-NEXT: [[RES:%.*]] = shl <8 x i16> [[LHS:%.*]], [[TMP1]]
+; CHECK-AVX2-NEXT: ret <8 x i16> [[RES]]
+;
+; CHECK-AVX512BW-LABEL: @test_16bit(
+; CHECK-AVX512BW-NEXT: [[MASK:%.*]] = shufflevector <8 x i16> [[TMP:%.*]], <8 x i16> undef, <8 x i32> zeroinitializer
+; CHECK-AVX512BW-NEXT: br i1 [[TST:%.*]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
+; CHECK-AVX512BW: if_true:
+; CHECK-AVX512BW-NEXT: ret <8 x i16> [[MASK]]
+; CHECK-AVX512BW: if_false:
+; CHECK-AVX512BW-NEXT: [[RES:%.*]] = shl <8 x i16> [[LHS:%.*]], [[MASK]]
+; CHECK-AVX512BW-NEXT: ret <8 x i16> [[RES]]
+;
%mask = shufflevector <8 x i16> %tmp, <8 x i16> undef, <8 x i32> zeroinitializer
br i1 %tst, label %if_true, label %if_false
OpenPOWER on IntegriCloud