[all-commits] [llvm/llvm-project] 137f78: [AMDGPU] Set MaxAtomicSizeInBitsSupported. (#75185)

James Y Knight via All-commits all-commits at lists.llvm.org
Mon Dec 18 13:51:19 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 137f785fa6a1abb1651a603e3ce5b0e1f00e5be4
      https://github.com/llvm/llvm-project/commit/137f785fa6a1abb1651a603e3ce5b0e1f00e5be4
  Author: James Y Knight <jyknight at google.com>
  Date:   2023-12-18 (Mon, 18 Dec 2023)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/atomic-oversize.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/unaligned-atomic.ll

  Log Message:
  -----------
  [AMDGPU] Set MaxAtomicSizeInBitsSupported. (#75185)

This will result in larger atomic operations getting expanded to
`__atomic_*` libcalls via AtomicExpandPass, which matches what Clang
already does in the frontend.

While AMDGPU currently disables the use of all libcalls, I've changed it
to instead disable all of them _except_ the atomic ones. Those are
already be emitted by the Clang frontend, and enabling them in the
backend allows the same behavior there.




More information about the All-commits mailing list