[PATCH] D157437: AMDGPU: Expand remaining system atomic operations

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 8 13:38:35 PDT 2023


arsenm created this revision.
arsenm added reviewers: AMDGPU, rampitec, doru1004, yaxunl, kerbowa, JonChesterfield.
Herald added subscribers: foad, hiraditya, tpr, dstuttard, jvesely, kzhuravl.
Herald added a project: All.
arsenm requested review of this revision.
Herald added a subscriber: wdng.
Herald added a project: LLVM.

System scope atomics need to use cmpxchg
loops. aea5980e26e6a87dab9f8acb10eb3a59dd143cb1 <https://reviews.llvm.org/rGaea5980e26e6a87dab9f8acb10eb3a59dd143cb1> started this, this
expands the set to cover the remaining integer operations.

      

We might not have to expand xchg and add, not sure.


https://reviews.llvm.org/D157437

Files:
  llvm/lib/Target/AMDGPU/SIISelLowering.cpp
  llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
  llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
  llvm/test/CodeGen/AMDGPU/flat_atomics.ll
  llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
  llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
  llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
  llvm/test/CodeGen/AMDGPU/global_atomics.ll
  llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
  llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
  llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
  llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
  llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
  llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16-system.ll
  llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i8-system.ll



More information about the llvm-commits mailing list