# REQUIRES: asserts
# RUN: llc --mtriple=hexagon %s -run-pass=pipeliner -debug-only=pipeliner \
# RUN: -window-sched=force -filetype=null -verify-machineinstrs 2>&1 \
# RUN: | FileCheck %s

# CHECK: Loop carried phis are not supported yet!
# CHECK: The WindowScheduler failed to initialize!
# CHECK-LABEL: body:             |
# CHECK: bb.3 (machine-block-address-taken):
# CHECK: [[REG:%[0-9]+]]:intregs = PHI {{%[0-9]+}}, %bb.1, {{%[0-9]+}}, %bb.3
# CHECK: {{%[0-9]+}}:intregs = PHI {{%[0-9]+}}, %bb.1, [[REG]], %bb.3

---
name:            relu
tracksRegLiveness: true
body:             |
  bb.0:
    successors: %bb.2(0x30000000), %bb.1(0x50000000)
    liveins: $r0, $r1, $r2

    %0:intregs = COPY $r2
    %1:intregs = COPY $r1
    %2:intregs = COPY $r0
    %3:predregs = C2_cmpeqi %2, 0
    J2_jumpt killed %3, %bb.2, implicit-def dead $pc
    J2_jump %bb.1, implicit-def dead $pc

  bb.1:
    successors: %bb.3(0x80000000)

    %4:hvxvr = V6_vd0
    %5:intregs = A2_addi %2, 31
    %6:intregs = S2_lsr_i_r %5, 5
    %7:intregs = COPY %6
    J2_loop0r %bb.3, %7, implicit-def $lc0, implicit-def $sa0, implicit-def $usr
    J2_jump %bb.3, implicit-def dead $pc

  bb.2:
    PS_jmpret $r31, implicit-def dead $pc

  bb.3 (machine-block-address-taken):
    successors: %bb.3(0x7c000000), %bb.2(0x04000000)

    %8:intregs = PHI %1, %bb.1, %9, %bb.3
    %10:intregs = PHI %0, %bb.1, %8, %bb.3
    %11:hvxvr, %9:intregs = V6_vL32b_pi %8, 128
    %12:hvxvr = V6_vmaxw killed %11, %4
    %13:intregs = V6_vS32b_pi %10, 128, killed %12
    ENDLOOP0 %bb.3, implicit-def $pc, implicit-def $lc0, implicit $sa0, implicit $lc0
    J2_jump %bb.2, implicit-def dead $pc
...
