| # RUN: llc -mtriple=amdgpu9.50 -run-pass=none -o - %s | FileCheck %s | |
| # | |
| # Round-trip test for the 'lr-split' MIR text spelling of | |
| # MachineInstr::LRSplit. The flag is set by SplitKit on copies inserted for | |
| # live-range splitting; AMDGPU's SIInstrInfo::canAddToBBProlog uses it to | |
| # recognize WWM_COPY / IMPLICIT_DEF instructions as part of the BB prologue. | |
| --- | |
| name: lr_split_roundtrip | |
| tracksRegLiveness: true | |
| machineFunctionInfo: | |
| isEntryFunction: true | |
| registers: | |
| - { id: 0, class: vgpr_32, flags: [ WWM_REG ] } | |
| - { id: 1, class: vgpr_32, flags: [ WWM_REG ] } | |
| body: | | |
| bb.0: | |
| liveins: $vgpr0 | |
| %0:vgpr_32 = COPY $vgpr0 | |
| %1:vgpr_32 = lr-split WWM_COPY %0:vgpr_32 | |
| S_ENDPGM 0, implicit %1 | |
| ... | |
| # CHECK-LABEL: name: lr_split_roundtrip | |
| # CHECK: %1:vgpr_32 = lr-split WWM_COPY %0 |