1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=amdgcn -mcpu=gfx1031 -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck -check-prefix=WAVE32 %s
3 # RUN: llc -mtriple=amdgcn -mcpu=gfx1031 -mattr=+wavefrontsize64 -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck -check-prefix=WAVE64 %s
9 tracksRegLiveness: true
11 stackPtrOffsetReg: $sgpr32
14 ; WAVE32-LABEL: name: wave_address_s
15 ; WAVE32: [[S_LSHR_B32_:%[0-9]+]]:sreg_32 = S_LSHR_B32 $sgpr32, 5, implicit-def dead $scc
16 ; WAVE32-NEXT: S_ENDPGM 0, implicit [[S_LSHR_B32_]]
18 ; WAVE64-LABEL: name: wave_address_s
19 ; WAVE64: [[S_LSHR_B32_:%[0-9]+]]:sreg_32 = S_LSHR_B32 $sgpr32, 6, implicit-def dead $scc
20 ; WAVE64-NEXT: S_ENDPGM 0, implicit [[S_LSHR_B32_]]
21 %0:sgpr(p5) = G_AMDGPU_WAVE_ADDRESS $sgpr32
22 S_ENDPGM 0, implicit %0
29 tracksRegLiveness: true
31 stackPtrOffsetReg: $sgpr32
34 ; WAVE32-LABEL: name: wave_address_v
35 ; WAVE32: [[V_LSHRREV_B32_e64_:%[0-9]+]]:vgpr_32 = V_LSHRREV_B32_e64 5, $sgpr32, implicit $exec
36 ; WAVE32-NEXT: S_ENDPGM 0, implicit [[V_LSHRREV_B32_e64_]]
38 ; WAVE64-LABEL: name: wave_address_v
39 ; WAVE64: [[V_LSHRREV_B32_e64_:%[0-9]+]]:vgpr_32 = V_LSHRREV_B32_e64 6, $sgpr32, implicit $exec
40 ; WAVE64-NEXT: S_ENDPGM 0, implicit [[V_LSHRREV_B32_e64_]]
41 %0:vgpr(p5) = G_AMDGPU_WAVE_ADDRESS $sgpr32
42 S_ENDPGM 0, implicit %0