diff --git a/offload/DeviceRTL/include/Synchronization.h b/offload/DeviceRTL/include/Synchronization.h index 5a789441b9d35..c510fbf0774c2 100644 --- a/offload/DeviceRTL/include/Synchronization.h +++ b/offload/DeviceRTL/include/Synchronization.h @@ -61,7 +61,11 @@ V add(Ty *Address, V Val, atomic::OrderingTy Ordering, template > 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 >