llvm/llvm/test/Transforms/SLPVectorizer/phi-not-ordered.ll

; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt -passes=slp-vectorizer -S < %s | FileCheck %s

define void @f(i16 %0) {
; CHECK-LABEL: @f(
; CHECK-NEXT:  entry:
; CHECK-NEXT:    br label [[FOR_COND:%.*]]
; CHECK:       for.cond:
; CHECK-NEXT:    [[TMP1:%.*]] = phi i16 [ 0, [[FOR_END5:%.*]] ], [ [[TMP0:%.*]], [[ENTRY:%.*]] ]
; CHECK-NEXT:    [[B_0:%.*]] = phi i16 [ 0, [[ENTRY]] ], [ [[INC:%.*]], [[FOR_END5]] ]
; CHECK-NEXT:    [[INC]] = add i16 0, 0
; CHECK-NEXT:    br label [[FOR_BODY2:%.*]]
; CHECK:       for.body2:
; CHECK-NEXT:    br label [[FOR_BODY2]]
; CHECK:       for.end5:
; CHECK-NEXT:    br label [[FOR_COND]]
;
entry:
  br label %for.cond

for.cond:
  %1 = phi i16 [ 0, %for.end5 ], [ %0, %entry ]
  %b.0 = phi i16 [ 0, %entry ], [ %inc, %for.end5 ]
  %inc = add i16 0, 0
  br label %for.body2

for.body2:
  br label %for.body2

for.end5:
  br label %for.cond
}