1# RUN: llc -mtriple=amdgcn--amdpal -mcpu=gfx1010 -run-pass=prologepilog -o - %s | FileCheck %s 2 3# On PAL, we need to ensure SRSRC do not clobber GIT pointer, passed 4# in SGPR8 for HS or GS 5 6--- | 7 8 define amdgpu_gs void @shader(i32 inreg %mergedGroupInfo) { 9 ret void 10 } 11... 12--- 13name: shader 14tracksRegLiveness: true 15liveins: 16 - { reg: '$sgpr0' } 17machineFunctionInfo: 18 isEntryFunction: true 19 scratchRSrcReg: '$sgpr100_sgpr101_sgpr102_sgpr103' 20 stackPtrOffsetReg: '$sgpr32' 21 argumentInfo: 22 privateSegmentWaveByteOffset: { reg: '$sgpr5' } 23body: | 24 ; CHECK: $sgpr1 = COPY killed $sgpr5 25 ; CHECK: $sgpr4_sgpr5 = S_GETPC_B64 26 ; CHECK: $sgpr4 = S_MOV_B32 $sgpr8 27 ; CHECK: $sgpr4_sgpr5_sgpr6_sgpr7 = S_LOAD_DWORDX4_IMM $sgpr4_sgpr5, 0, 0, 0, implicit-def $sgpr4_sgpr5_sgpr6_sgpr7 :: (dereferenceable invariant load 16, align 4, addrspace 4) 28 bb.0: 29 successors: %bb.1, %bb.2 30 liveins: $sgpr0 31 32 $exec_lo = S_MOV_B32 -1 33 renamable $vgpr0 = V_MBCNT_LO_U32_B32_e64 -1, 0, implicit $exec 34 renamable $sgpr0 = S_BFE_U32 killed renamable $sgpr0, 589836, implicit-def dead $scc 35 renamable $vcc_lo = V_CMP_GT_U32_e64 killed $sgpr0, killed $vgpr0, implicit $exec 36 $sgpr0 = S_AND_SAVEEXEC_B32 $vcc_lo, implicit-def $exec, implicit-def $scc, implicit $exec 37 S_CBRANCH_EXECZ %bb.2, implicit $exec 38 S_BRANCH %bb.1 39 40 bb.1: 41 renamable $vgpr0 = V_MOV_B32_e32 1065353216, implicit $exec 42 BUFFER_STORE_DWORD_OFFEN killed renamable $vgpr0, undef renamable $vgpr0, $sgpr100_sgpr101_sgpr102_sgpr103, 0, 0, 0, 0, 0, 0, 0, implicit $exec :: (store 4, addrspace 5) 43 44 bb.2: 45 S_ENDPGM 0 46 47... 48