1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: not llc -march=amdgcn -mcpu=gfx900 -start-before=greedy,0 -stop-after=virtregrewriter,1 -o - 2>%t.err %s | FileCheck %s 3# RUN: FileCheck -check-prefix=ERR %s < %t.err 4 5# This testcase cannot be compiled. An attempted eviction legality 6# check was inconsistent with a later assertion when the eviction was 7# performed. 8 9# ERR: error: ran out of registers during register allocation 10 11--- | 12 define void @foo() #0 { 13 ret void 14 } 15 16 attributes #0 = { "amdgpu-waves-per-eu"="8,8" } 17 18... 19 20# CHECK: S_NOP 0, implicit-def renamable $vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19, implicit-def renamable $vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27, implicit-def renamable $vgpr0_vgpr1_vgpr2_vgpr3, implicit-def renamable $vgpr28_vgpr29_vgpr30_vgpr31, implicit-def renamable $vgpr0_vgpr1_vgpr2_vgpr3 21# CHECK: S_NOP 0, implicit killed renamable $vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19, implicit killed renamable $vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27, implicit killed renamable $vgpr0_vgpr1_vgpr2_vgpr3, implicit killed renamable $vgpr28_vgpr29_vgpr30_vgpr31, implicit killed renamable $vgpr0_vgpr1_vgpr2_vgpr3 22 23--- 24name: foo 25tracksRegLiveness: true 26machineFunctionInfo: 27 scratchRSrcReg: '$sgpr0_sgpr1_sgpr2_sgpr3' 28 frameOffsetReg: '$sgpr33' 29 stackPtrOffsetReg: '$sgpr32' 30body: | 31 bb.0: 32 S_NOP 0, implicit-def %0:vreg_512, implicit-def %1:vreg_256, implicit-def %2:vreg_128, implicit-def %3:vreg_128, implicit-def %4:vreg_128 33 34 S_NOP 0, implicit %0, implicit %1, implicit %2, implicit %3, implicit %4 35 S_ENDPGM 0 36 37... 38