[llvm] [AMDGPU] Support partial and empty WWM pools for SGPR spills (PR #213491)

Diana Picus via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 3 06:22:33 PDT 2026


================
@@ -49,3 +53,35 @@ body:             |
     renamable $sgpr10 = SI_SPILL_S32_RESTORE %stack.0, implicit $exec, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $sgpr32
     S_SETPC_B64 $sgpr30_sgpr31, implicit $scc
 ...
+---
+name:            fallback_scavenging
+tracksRegLiveness: true
+frameInfo:
+  maxAlignment:    4
+stack:
+  - { id: 0, type: spill-slot, size: 4, alignment: 4, stack-id: sgpr-spill }
+machineFunctionInfo:
+  isEntryFunction: false
+  scratchRSrcReg:  '$sgpr0_sgpr1_sgpr2_sgpr3'
+  stackPtrOffsetReg: '$sgpr32'
+  frameOffsetReg: '$sgpr33'
+  hasSpilledSGPRs: true
+  hasNoWWMPoolSGPRSpillFallback: true
+body:             |
+  bb.0:
+    liveins: $sgpr30_sgpr31, $sgpr10, $sgpr11
+    ; CHECK-LABEL: name: fallback_scavenging
+    ; CHECK: frameInfo:
+    ; CHECK: stackSize: 16
+    ; CHECK: stack:
+    ; CHECK: - { id: 0,
----------------
rovka wrote:

This test has autogenerated checks, you should run the script to update it.

https://github.com/llvm/llvm-project/pull/213491


More information about the llvm-commits mailing list