| # RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -run-pass=virtregmap \ |
| # RUN: -o - %s | FileCheck %s |
| # |
| # Verify that VirtRegMap state (split-from, assigned-phys) round-trips through |
| # MIR. |
| |
| # CHECK-LABEL: name: test_vrm_roundtrip |
| # CHECK: registers: |
| # CHECK: id: 0, |
| # CHECK-NOT: split-from: |
| # CHECK: assigned-phys: '$vgpr5' |
| # CHECK: id: 1, |
| # CHECK: split-from: '%0' |
| # CHECK: assigned-phys: '$vgpr6' |
| # CHECK: id: 2, |
| # CHECK: split-from: '%0' |
| # CHECK: assigned-phys: '$vgpr7' |
| --- |
| name: test_vrm_roundtrip |
| tracksRegLiveness: true |
| registers: |
| - { id: 0, class: vgpr_32, assigned-phys: '$vgpr5' } |
| - { id: 1, class: vgpr_32, assigned-phys: '$vgpr6', split-from: '%0' } |
| - { id: 2, class: vgpr_32, assigned-phys: '$vgpr7', split-from: '%0' } |
| body: | |
| bb.0: |
| liveins: $vgpr0 |
| %0:vgpr_32 = COPY $vgpr0 |
| %1:vgpr_32 = V_ADD_U32_e32 1, %0:vgpr_32, implicit $exec |
| %2:vgpr_32 = V_ADD_U32_e32 2, %0:vgpr_32, implicit $exec |
| S_ENDPGM 0, implicit %0, implicit %1, implicit %2 |
| ... |