19 static constexpr auto get(TMemOrder)
21# ifdef ALPAKA_CUDA_ATOMIC
22 if constexpr(std::same_as<TMemOrder, mem_order::SeqCst>)
24 return ::cuda::memory_order_seq_cst;
26 if constexpr(std::same_as<TMemOrder, mem_order::AcqRel>)
28 return ::cuda::memory_order_acq_rel;
30 if constexpr(std::same_as<TMemOrder, mem_order::Release>)
32 return ::cuda::memory_order_release;
34 if constexpr(std::same_as<TMemOrder, mem_order::Acquire>)
36 return ::cuda::memory_order_acquire;
38 if constexpr(std::same_as<TMemOrder, mem_order::Relaxed>)
40 return ::cuda::memory_order_relaxed;
43# if ALPAKA_LANG_CUDA >= ALPAKA_VERSION_NUMBER(12, 8, 0) && ALPAKA_ARCH_PTX
45 if constexpr(std::same_as<TMemOrder, mem_order::SeqCst>)
47 return __NV_ATOMIC_SEQ_CST;
49 if constexpr(std::same_as<TMemOrder, mem_order::AcqRel>)
51 return __NV_ATOMIC_ACQ_REL;
53 if constexpr(std::same_as<TMemOrder, mem_order::Release>)
55 return __NV_ATOMIC_RELEASE;
57 if constexpr(std::same_as<TMemOrder, mem_order::Acquire>)
59 return __NV_ATOMIC_ACQUIRE;
61 if constexpr(std::same_as<TMemOrder, mem_order::Relaxed>)
63 return __NV_ATOMIC_RELAXED;