[all-commits] [llvm/llvm-project] 62e516: [AMDGPU] Update code object metadata for kernarg p...

Austin Kerbow via All-commits all-commits at lists.llvm.org
Mon Apr 7 08:07:11 PDT 2025


  Branch: refs/heads/users/kerbowa/preload-kernarg-metadata
  Home:   https://github.com/llvm/llvm-project
  Commit: 62e516888947a45159d61ad8ef6d854a93d6029d
      https://github.com/llvm/llvm-project/commit/62e516888947a45159d61ad8ef6d854a93d6029d
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Support/AMDGPUMetadata.h
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    A llvm/test/CodeGen/AMDGPU/hsa-metadata-preload-args-v6.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-2.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-not-supported.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-on.ll

  Log Message:
  -----------
  [AMDGPU] Update code object metadata for kernarg preload

Tracks the registers that explicit and hidden arguments are preloaded to
with new code object metadata.

IR arguments may be split across multiple parts by isel, and SGPR tuple
alignment means that an argument may be spread across multiple
registers.

To support this, some of the utilities for hidden kernel arguments are
moved to `AMDGPUArgumentUsageInfo.h`. Additional bookkeeping is also
needed for tracking purposes.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list