Compiler projects using llvm
# RUN: llc -march=amdgcn -run-pass liveintervals -verify-machineinstrs -o /dev/null -debug-only=regalloc %s 2>&1 | FileCheck %s
# REQUIRES: asserts
# We currently maintain a main liveness range which operates like a superset of
# all subregister liveranges. We may need to create additional SSA values at
# merge point in this main liverange even though none of the subregister
# liveranges needed it.
#
# Should see three distinct value numbers:
# CHECK: %0 [{{.*}}:0)[{{.*}}:1)[{{.*}}:2) 0@{{[0-9]+[Berd]}} 1@{{[0-9]+[Berd]}} 2@{{[0-9]+B-phi}}
--- |
  define amdgpu_kernel void @test0() { ret void }
...
---
name: test0
registers:
  - { id: 0, class: sreg_64 }
body: |
  bb.0:
    S_NOP 0, implicit-def undef %0.sub0
    S_CBRANCH_VCCNZ %bb.1, implicit undef $vcc
    S_BRANCH %bb.2

  bb.1:
    S_NOP 0, implicit-def %0.sub1
    S_NOP 0, implicit %0.sub1
    S_BRANCH %bb.2

  bb.2:
    S_NOP 0, implicit %0.sub0
...