[all-commits] [llvm/llvm-project] 7e3fa8: [AMDGPU] Move kernarg preload logic to separate pass

Austin Kerbow via All-commits all-commits at lists.llvm.org
Sun May 11 20:08:48 PDT 2025


  Branch: refs/heads/users/kerbowa/preload-kernarg-pass
  Home:   https://github.com/llvm/llvm-project
  Commit: 7e3fa816a85e2f89fbd3eddbc66690e2d62a9544
      https://github.com/llvm/llvm-project/commit/7e3fa816a85e2f89fbd3eddbc66690e2d62a9544
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2025-05-11 (Sun, 11 May 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    A llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd-with-ret.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs-IR-lowering.ll
    R llvm/test/CodeGen/AMDGPU/preload-kernargs-inreg-hints.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll

  Log Message:
  -----------
  [AMDGPU] Move kernarg preload logic to separate pass

Moves kernarg preload logic to its own module pass. Cloned function
declarations are removed when preloading hidden arguments. The inreg
attribute is now added in this pass instead of AMDGPUAttributor. The
rest of the logic is copied from AMDGPULowerKernelArguments which now
only check whether an arguments is marked inreg to avoid replacing
direct uses of preloaded arguments. This change requires test updates to
remove inreg from lit tests with kernels that don't actually want
preloading.


  Commit: 0cb29e4fe05272cfce7d67254a2665311198d108
      https://github.com/llvm/llvm-project/commit/0cb29e4fe05272cfce7d67254a2665311198d108
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2025-05-11 (Sun, 11 May 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def

  Log Message:
  -----------
  Fix formating alphabetical order


  Commit: bc78db2bd60b5d51bfa5969a09847991efa649bd
      https://github.com/llvm/llvm-project/commit/bc78db2bd60b5d51bfa5969a09847991efa649bd
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2025-05-11 (Sun, 11 May 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp

  Log Message:
  -----------
  Address comments


Compare: https://github.com/llvm/llvm-project/compare/e1e85fa0b2db...bc78db2bd60b

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