[llvm] [AMDGPU] Don't send DEALLOC_VGPRs after calls (PR #77439)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 9 04:35:47 PST 2024
================
@@ -565,3 +566,19 @@ body: |
S_WAITCNT_VSCNT undef $sgpr_null, 0
S_ENDPGM 0
...
+
+---
+name: with_calls
+frameInfo:
+ hasCalls: true
+body: |
+ bb.0:
+ ; Make sure we don't send DEALLOC_VGPRS after a call, since there might be
+ ; scratch stores still in progress.
+ ; CHECK-LABEL: name: with_calls
+ ; CHECK-NOT: S_SENDMSG 3
+ ; CHECK: S_ENDPGM 0
+ GLOBAL_STORE_DWORD undef renamable $vgpr0_vgpr1, killed renamable $vgpr1, 0, 4, implicit $exec
+ $sgpr30_sgpr31 = SI_CALL undef renamable $sgpr4_sgpr5, 0, csr_amdgpu
+ S_ENDPGM 0
+...
----------------
arsenm wrote:
is it worth adding a tail call case too?
https://github.com/llvm/llvm-project/pull/77439
More information about the llvm-commits
mailing list