2#include <device_atomic_functions.h>
6__forceinline__ __device__ T atomic_cas(T* address, T compare, T val)
8 return atomicCAS(address, compare, val);
12__forceinline__ __device__ T atomic_add(T* address, T val)
14 return atomicAdd(address, val);
18__forceinline__ __device__ T atomic_sub(T* address, T val)
20 return atomicSub(address, val);
24__forceinline__ __device__ T atomic_exch(T* address, T val)
26 return atomicExch(address, val);
30__forceinline__ __device__ T atomic_max(T* address, T val)
32 return atomicMax(address, val);
36__forceinline__ __device__ T atomic_min(T* address, T val)
38 return atomicMin(address, val);
42__forceinline__ __device__ T atomic_and(T* address, T val)
44 return atomicAnd(address, val);
48__forceinline__ __device__ T atomic_or(T* address, T val)
50 return atomicOr(address, val);
54__forceinline__ __device__ T atomic_xor(T* address, T val)
56 return atomicXor(address, val);