[OpenMP] Add pre sm_70 load hack back in (#138589)
Summary: Different ordering modes aren't supported for an atomic load, so we just do an add of zero as the same thing. It's less efficient, but it works. Fixes https://github.com/llvm/llvm-project/issues/138560
This commit is contained in:
parent
04364fb888
commit
dfcb8cb2a9
@ -59,7 +59,11 @@ V add(Ty *Address, V Val, atomic::OrderingTy Ordering,
|
||||
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
|
||||
V load(Ty *Address, atomic::OrderingTy Ordering,
|
||||
MemScopeTy MemScope = MemScopeTy::device) {
|
||||
#ifdef __NVPTX__
|
||||
return __scoped_atomic_fetch_add(Address, V(0), Ordering, MemScope);
|
||||
#else
|
||||
return __scoped_atomic_load_n(Address, Ordering, MemScope);
|
||||
#endif
|
||||
}
|
||||
|
||||
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user