|
1 | 1 | # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py |
2 | | -# RUN: llc -mtriple=amdgcn-amd-amdpal -mcpu=gfx1100 -mattr=+real-true16 -run-pass=prologepilog %s -o - | FileCheck -check-prefix=GCN %s |
| 2 | +# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -mattr=+real-true16 -run-pass=prologepilog %s -o - | FileCheck -check-prefix=GCN %s |
3 | 3 |
|
4 | 4 | --- |
5 | 5 | name: wwm_skip_shift_16bit_reg |
6 | 6 | tracksRegLiveness: true |
| 7 | +noVRegs: true |
7 | 8 | machineFunctionInfo: |
8 | 9 | wwmReservedRegs: ['$vgpr0_lo16'] |
9 | 10 | isEntryFunction: false |
10 | 11 | body: | |
11 | 12 | bb.0: |
12 | | - liveins: $vgpr0,$vgpr1,$sgpr0 |
| 13 | + liveins: $sgpr0, $sgpr1 |
13 | 14 | ; GCN-LABEL: name: wwm_skip_shift_16bit_reg |
14 | | - ; GCN: liveins: $vgpr0, $vgpr1, $sgpr0 |
| 15 | + ; GCN: liveins: $sgpr0, $sgpr1 |
15 | 16 | ; GCN-NEXT: {{ $}} |
16 | | - ; GCN-NEXT: $sgpr1 = S_XOR_SAVEEXEC_B32 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec |
17 | | - ; GCN-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0_lo16, $sp_reg, 0, 0, implicit $exec, implicit $flat_scr :: (store (s16) into %stack.0, addrspace 5) |
18 | | - ; GCN-NEXT: $exec_lo = S_MOV_B32 killed $sgpr1 |
19 | | - ; GCN-NEXT: undef $vgpr0_lo16 = V_CNDMASK_B16_t16_e64 0, $vgpr0_lo16, 0, $vgpr1_lo16, $sgpr0, 0, implicit $exec |
20 | | - ; GCN-NEXT: $sgpr0 = S_XOR_SAVEEXEC_B32 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec |
21 | | - ; GCN-NEXT: $vgpr0_lo16 = SCRATCH_LOAD_DWORD_SADDR $sp_reg, 0, 0, implicit $exec, implicit $flat_scr, implicit $vgpr0_lo16(tied-def 0) :: (load (s16) from %stack.0, addrspace 5) |
22 | | - ; GCN-NEXT: $exec_lo = S_MOV_B32 killed $sgpr0 |
23 | | - ; GCN-NEXT: SI_RETURN implicit $vgpr0 |
24 | | - undef $vgpr0_lo16 = V_CNDMASK_B16_t16_e64 0, $vgpr0_lo16, 0, $vgpr1_lo16, $sgpr0, 0, implicit $exec |
25 | | - SI_RETURN implicit $vgpr0 |
| 17 | + ; GCN-NEXT: $sgpr2 = S_XOR_SAVEEXEC_B32 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec |
| 18 | + ; GCN-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sp_reg, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) |
| 19 | + ; GCN-NEXT: $exec_lo = S_MOV_B32 killed $sgpr2 |
| 20 | + ; GCN-NEXT: renamable $vgpr0_hi16 = IMPLICIT_DEF |
| 21 | + ; GCN-NEXT: $sgpr4 = ENTER_STRICT_WWM -1, implicit-def $exec, implicit-def $scc, implicit $exec |
| 22 | + ; GCN-NEXT: $vgpr1 = IMPLICIT_DEF |
| 23 | + ; GCN-NEXT: $vgpr1 = V_CNDMASK_B16_t16_e64 0, killed $vgpr0_hi16, 0, $vgpr1, $sgpr0, 0, implicit $exec |
| 24 | + ; GCN-NEXT: $exec_lo = EXIT_STRICT_WWM killed renamable $sgpr4 |
| 25 | + renamable $vgpr0_hi16 = IMPLICIT_DEF |
| 26 | + $sgpr4 = ENTER_STRICT_WWM -1, implicit-def $exec, implicit-def $scc, implicit $exec |
| 27 | + $vgpr0_lo16 = IMPLICIT_DEF |
| 28 | + $vgpr0_lo16 = V_CNDMASK_B16_t16_e64 0, killed $vgpr0_hi16, 0, $vgpr0_lo16, $sgpr0, 0, implicit $exec |
| 29 | + $exec_lo = EXIT_STRICT_WWM killed renamable $sgpr4 |
26 | 30 | ... |
27 | | - |
|
0 commit comments