| # RUN: llc -mtriple=amdgpu11.00 -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 | |
| ... |