blob: daf9501f1b4ea2c844999391f85249400159c65b [file] [log] [blame]
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu -slp-threshold=-99999 < %s | FileCheck %s
define i32 @test(i32 %0) {
; CHECK-LABEL: define i32 @test(
; CHECK-SAME: i32 [[TMP0:%.*]]) {
; CHECK-NEXT: [[ENTRY:.*]]:
; CHECK-NEXT: [[TMP1:%.*]] = insertelement <2 x i32> <i32 0, i32 poison>, i32 [[TMP0]], i32 1
; CHECK-NEXT: switch i32 0, label %[[BCI_130:.*]] [
; CHECK-NEXT: i32 -4, label %[[BCI_96:.*]]
; CHECK-NEXT: i32 3, label %[[BCI_130]]
; CHECK-NEXT: i32 1, label %[[BCI_130]]
; CHECK-NEXT: i32 9, label %[[BCI_108:.*]]
; CHECK-NEXT: i32 0, label %[[BCI_130]]
; CHECK-NEXT: ]
; CHECK: [[BCI_130]]:
; CHECK-NEXT: [[TMP2:%.*]] = phi <2 x i32> [ zeroinitializer, %[[BCI_108]] ], [ [[TMP1]], %[[BCI_96]] ], [ [[TMP1]], %[[ENTRY]] ], [ [[TMP1]], %[[ENTRY]] ], [ [[TMP1]], %[[ENTRY]] ], [ [[TMP1]], %[[ENTRY]] ]
; CHECK-NEXT: ret i32 0
; CHECK: [[BCI_108]]:
; CHECK-NEXT: br label %[[BCI_130]]
; CHECK: [[BCI_96]]:
; CHECK-NEXT: br label %[[BCI_130]]
;
entry:
switch i32 0, label %bci_130 [
i32 -4, label %bci_96
i32 3, label %bci_130
i32 1, label %bci_130
i32 9, label %bci_108
i32 0, label %bci_130
]
bci_130:
%1 = phi i32 [ 0, %bci_108 ], [ %0, %bci_96 ], [ %0, %entry ], [ %0, %entry ], [ %0, %entry ], [ %0, %entry ]
%local_2_10 = phi i32 [ 0, %bci_108 ], [ 0, %bci_96 ], [ 0, %entry ], [ 0, %entry ], [ 0, %entry ], [ 0, %entry ]
ret i32 0
bci_108:
br label %bci_130
bci_96:
br label %bci_130
}