[all-commits] [llvm/llvm-project] b6fa39: clang/AMDGPU: Emit atomicrmw from ds_fadd builtins

Matt Arsenault via All-commits all-commits at lists.llvm.org
Fri Jun 14 12:10:48 PDT 2024


  Branch: refs/heads/users/arsenm/amdgpu-clang-emit-atomicrmw-ds-fadd-builtins
  Home:   https://github.com/llvm/llvm-project
  Commit: b6fa394408069d850c2e074cec64eef8028d7737
      https://github.com/llvm/llvm-project/commit/b6fa394408069d850c2e074cec64eef8028d7737
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-06-14 (Fri, 14 Jun 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-unsafe-atomics-gfx90a.cu
    M clang/test/CodeGenCUDA/builtins-unsafe-atomics-spirv-amdgcn-gfx90a.cu
    M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx8.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw from ds_fadd builtins

We should have done this for the f32/f64 case a long time ago. Now that
codegen handles atomicrmw selection for the v2f16/v2bf16 case, start emitting
it instead.

This also does upgrade the behavior to respect a volatile qualified pointer,
which was previously ignored (for the cases that don't have an explicit
volatile argument).



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