[llvm] [AMDGPU] Don't DEALLOC_VGPRS from callable functions (PR #72245)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 15 04:22:38 PST 2023
================
@@ -556,3 +558,27 @@ body: |
S_WAITCNT_VSCNT undef $sgpr_null, 0
S_ENDPGM 0
...
+
+---
+name: gfx_function
+body: |
+ bb.0:
+ ; CHECK-LABEL: name: gfx_function
+ ; CHECK-NOT: S_SENDMSG 3
+ ; CHECK: S_ENDPGM 0
+ GLOBAL_STORE_DWORD undef renamable $vgpr0_vgpr1, killed renamable $vgpr1, 0, 4, implicit $exec
+ S_WAITCNT_VSCNT undef $sgpr_null, 0
+ S_ENDPGM 0
+...
+
+---
+name: ccc_function
+body: |
+ bb.0:
+ ; CHECK-LABEL: name: ccc_function
+ ; CHECK-NOT: S_SENDMSG 3
+ ; CHECK: S_ENDPGM 0
+ GLOBAL_STORE_DWORD undef renamable $vgpr0_vgpr1, killed renamable $vgpr1, 0, 4, implicit $exec
+ S_WAITCNT_VSCNT undef $sgpr_null, 0
+ S_ENDPGM 0
+...
----------------
arsenm wrote:
I believe you end up with an MBB ending in nothing, which may or may not also happen to be at the end of the function
https://github.com/llvm/llvm-project/pull/72245
More information about the llvm-commits
mailing list