[PATCH] D141187: [SystemZ] Set setMaxAtomicSizeInBitsSupported
Ulrich Weigand via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 9 05:20:52 PST 2023
uweigand added a comment.
I don't think this is quite correct, as we do support 128-bit atomics on properly aligned addresses. In any case, the back-end implements atomic load, store, and cmpxchg for i128. We do not currently implement atomicrmw, but that could be handled in terms of cmpxchg of course. For non-aligned addresses, we do need to fall back to the library routine, however.
Interestingly enough, the SystemZ back-end does not even use the AtomicExpandPass at all at the moment, so the `setMaxAtomicSizeInBitsSupported` change probably doesn't even have any effect? Everything still seems to work, however ...
@jonpa we don't seem to have test cases for i128 atomicrmw at the moment - could you have a loop at what happens here, and if there's maybe something we need to change? Thanks!
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D141187/new/
https://reviews.llvm.org/D141187
More information about the llvm-commits
mailing list