# RUN: llc -march=amdgcn -run-pass rename-independent-subregs -o - %s | FileCheck %s --- | define void @test0() { ret void } ... --- # In the test below we have two independent def+use pairs of subregister1 which # can be moved to a new virtual register. The third def of sub1 however is used # in combination with sub0 and needs to stay with the original vreg. # CHECK-LABEL: name: test0 # CHECK: S_NOP 0, implicit-def undef %0:sub0 # CHECK: S_NOP 0, implicit-def undef %2:sub1 # CHECK: S_NOP 0, implicit %2:sub1 # CHECK: S_NOP 0, implicit-def undef %1:sub1 # CHECK: S_NOP 0, implicit %1:sub1 # CHECK: S_NOP 0, implicit-def %0:sub1 # CHECK: S_NOP 0, implicit %0 name: test0 isSSA: true registers: - { id: 0, class: sreg_128 } body: | bb.0: S_NOP 0, implicit-def undef %0:sub0 S_NOP 0, implicit-def %0:sub1 S_NOP 0, implicit %0:sub1 S_NOP 0, implicit-def %0:sub1 S_NOP 0, implicit %0:sub1 S_NOP 0, implicit-def %0:sub1 S_NOP 0, implicit %0 ...