[llvm] Split vgpr regalloc pipeline (PR #93526)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 12 10:41:59 PDT 2024
================
@@ -0,0 +1,53 @@
+; RUN: not llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -stress-regalloc=2 -filetype=null %s 2>&1 | FileCheck %s
+
+; A negative test to capture the expected error when the VGPRs are insufficient for wwm-regalloc.
+
+; CHECK: error: can't find enough VGPRs for wwm-regalloc
+
+define amdgpu_kernel void @test(i32 %in) {
+entry:
+ call void asm sideeffect "", "~{v[0:7]}" ()
+ call void asm sideeffect "", "~{v[8:15]}" ()
+ call void asm sideeffect "", "~{v[16:23]}" ()
+ call void asm sideeffect "", "~{v[24:31]}" ()
+ call void asm sideeffect "", "~{v[32:39]}" ()
+ call void asm sideeffect "", "~{v[40:47]}" ()
+ call void asm sideeffect "", "~{v[48:55]}" ()
+ call void asm sideeffect "", "~{v[56:63]}" ()
+ call void asm sideeffect "", "~{v[64:71]}" ()
+ call void asm sideeffect "", "~{v[72:79]}" ()
+ call void asm sideeffect "", "~{v[80:87]}" ()
+ call void asm sideeffect "", "~{v[88:95]}" ()
+ call void asm sideeffect "", "~{v[96:103]}" ()
+ call void asm sideeffect "", "~{v[104:111]}" ()
+ call void asm sideeffect "", "~{v[112:119]}" ()
+ call void asm sideeffect "", "~{v[120:127]}" ()
+ call void asm sideeffect "", "~{v[128:135]}" ()
+ call void asm sideeffect "", "~{v[136:143]}" ()
+ call void asm sideeffect "", "~{v[144:151]}" ()
+ call void asm sideeffect "", "~{v[152:159]}" ()
+ call void asm sideeffect "", "~{v[160:167]}" ()
+ call void asm sideeffect "", "~{v[168:175]}" ()
+ call void asm sideeffect "", "~{v[176:183]}" ()
+ call void asm sideeffect "", "~{v[184:191]}" ()
+ call void asm sideeffect "", "~{v[192:199]}" ()
+ call void asm sideeffect "", "~{v[200:207]}" ()
+ call void asm sideeffect "", "~{v[208:215]}" ()
+ call void asm sideeffect "", "~{v[216:223]}" ()
+ call void asm sideeffect "", "~{v[224:231]}" ()
+ call void asm sideeffect "", "~{v[232:239]}" ()
+ call void asm sideeffect "", "~{v[240:247]}" ()
+ call void asm sideeffect "", "~{v[248:255]}" ()
----------------
arsenm wrote:
I think you should only need to go up to the number of registers that support 1024 workgroups
https://github.com/llvm/llvm-project/pull/93526
More information about the llvm-commits
mailing list