Author: Alexey Bataev Date: 2021-01-08T06:23:23-08:00 New Revision: 0e57084d0efaab215d67c81a4664e1ee0622d3f1
URL: https://github.com/llvm/llvm-project/commit/0e57084d0efaab215d67c81a4664e1ee0622d3f1 DIFF: https://github.com/llvm/llvm-project/commit/0e57084d0efaab215d67c81a4664e1ee0622d3f1.diff LOG: [SLP][NFC]Add a test for reused shrink check, NFC. Added: Modified: llvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll Removed: ################################################################################ diff --git a/llvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll b/llvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll index 110e1177774b..1b89c9a437a2 100644 --- a/llvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll +++ b/llvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll @@ -59,3 +59,49 @@ bb: store i32 %tmp45, i32* %tmp46, align 4 ret void } + +define internal i32 @ipvideo_decode_block_opcode_0xD_16() { +; CHECK-LABEL: @ipvideo_decode_block_opcode_0xD_16( +; CHECK-NEXT: entry: +; CHECK-NEXT: br label [[FOR_BODY:%.*]] +; CHECK: for.body: +; CHECK-NEXT: [[TMP0:%.*]] = phi <2 x i16> [ undef, [[ENTRY:%.*]] ], [ [[TMP0]], [[IF_END:%.*]] ] +; CHECK-NEXT: [[SHUFFLE:%.*]] = shufflevector <2 x i16> [[TMP0]], <2 x i16> poison, <8 x i32> <i32 0, i32 0, i32 0, i32 0, i32 1, i32 1, i32 1, i32 1> +; CHECK-NEXT: br label [[IF_END]] +; CHECK: if.end: +; CHECK-NEXT: [[ARRAYIDX11_1:%.*]] = getelementptr inbounds i16, i16* undef, i32 1 +; CHECK-NEXT: [[ARRAYIDX11_2:%.*]] = getelementptr inbounds i16, i16* undef, i32 2 +; CHECK-NEXT: [[ARRAYIDX11_3:%.*]] = getelementptr inbounds i16, i16* undef, i32 3 +; CHECK-NEXT: [[ARRAYIDX11_4:%.*]] = getelementptr inbounds i16, i16* undef, i32 4 +; CHECK-NEXT: [[ARRAYIDX11_5:%.*]] = getelementptr inbounds i16, i16* undef, i32 5 +; CHECK-NEXT: [[ARRAYIDX11_6:%.*]] = getelementptr inbounds i16, i16* undef, i32 6 +; CHECK-NEXT: [[ARRAYIDX11_7:%.*]] = getelementptr inbounds i16, i16* undef, i32 7 +; CHECK-NEXT: store <8 x i16> [[SHUFFLE]], <8 x i16>* undef, align 2 +; CHECK-NEXT: br label [[FOR_BODY]] +; +entry: + br label %for.body + +for.body: ; preds = %if.end, %entry + %P.sroa.7.0 = phi i16 [ undef, %entry ], [ %P.sroa.7.0, %if.end ] + %P.sroa.0.0 = phi i16 [ undef, %entry ], [ %P.sroa.0.0, %if.end ] + br label %if.end + +if.end: ; preds = %for.body + store i16 %P.sroa.0.0, i16* undef, align 2 + %arrayidx11.1 = getelementptr inbounds i16, i16* undef, i32 1 + store i16 %P.sroa.0.0, i16* %arrayidx11.1, align 2 + %arrayidx11.2 = getelementptr inbounds i16, i16* undef, i32 2 + store i16 %P.sroa.0.0, i16* %arrayidx11.2, align 2 + %arrayidx11.3 = getelementptr inbounds i16, i16* undef, i32 3 + store i16 %P.sroa.0.0, i16* %arrayidx11.3, align 2 + %arrayidx11.4 = getelementptr inbounds i16, i16* undef, i32 4 + store i16 %P.sroa.7.0, i16* %arrayidx11.4, align 2 + %arrayidx11.5 = getelementptr inbounds i16, i16* undef, i32 5 + store i16 %P.sroa.7.0, i16* %arrayidx11.5, align 2 + %arrayidx11.6 = getelementptr inbounds i16, i16* undef, i32 6 + store i16 %P.sroa.7.0, i16* %arrayidx11.6, align 2 + %arrayidx11.7 = getelementptr inbounds i16, i16* undef, i32 7 + store i16 %P.sroa.7.0, i16* %arrayidx11.7, align 2 + br label %for.body +} _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits