|
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicLoad (T *acc) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE void | RAJA::detail::builtin_atomicStore (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicExchange (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicCAS (T *acc, T compare, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicAdd (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicSub (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicAnd (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicOr (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicXor (T *acc, T value) |
| |
| template<typename T , std::enable_if_t< builtin_useIntrinsic< T >::value, bool > = true> |
| RAJA_DEVICE_HIP RAJA_INLINE bool | RAJA::detail::builtin_atomicCAS_equal (const T &a, const T &b) |
| |
| template<typename T , typename Oper > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicCAS_loop (T *acc, Oper &&oper) |
| |
| template<typename T , typename Oper , typename ShortCircuit > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::detail::builtin_atomicCAS_loop (T *acc, Oper &&oper, ShortCircuit &&sc) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicLoad (builtin_atomic, T *acc) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE void | RAJA::atomicStore (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicAdd (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicSub (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicMin (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicMax (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicInc (builtin_atomic, T *acc) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicInc (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicDec (builtin_atomic, T *acc) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicDec (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicAnd (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicOr (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicXor (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicExchange (builtin_atomic, T *acc, T value) |
| |
| template<typename T > |
| RAJA_DEVICE_HIP RAJA_INLINE T | RAJA::atomicCAS (builtin_atomic, T *acc, T compare, T value) |
| |
RAJA header file defining automatic and builtin atomic operations.