[llvm] [AMDGPU] Add support for preloading implicit kernel arguments (PR #83817)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 26 05:37:49 PDT 2024
================
@@ -3210,4 +3210,12 @@ def int_amdgcn_addrspacecast_nonnull : DefaultAttrsIntrinsic<
[llvm_anyptr_ty], [llvm_anyptr_ty],
[IntrNoMem, IntrSpeculatable]
>;
+
+// This intrinsic is used to track the user SGPRs that hold implicit kernel
+// arguments. The i32 argument for this intrinsic represents the offset in
+// bytes from the value pointed to by the implicitarg pointer.
+def int_amdgcn_preload_implicitarg :
----------------
arsenm wrote:
Fundamentally implicit arguments aren't different from a user argument. Why do these require a special intrinsic to track them if we already handle the not-user case? If we do need this intrinsic, I think in terms of patch splitting it would be better to introduce this separately with a dedicated test showing it works for the full range of legal types
https://github.com/llvm/llvm-project/pull/83817
More information about the llvm-commits
mailing list