6 #ifndef EASTL_ATOMIC_INTERNAL_ARCH_THREAD_FENCE_H
7 #define EASTL_ATOMIC_INTERNAL_ARCH_THREAD_FENCE_H
9 #if defined(EA_PRAGMA_ONCE_SUPPORTED)
18 #if defined(EASTL_ARCH_ATOMIC_THREAD_FENCE_RELAXED)
19 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_RELAXED_AVAILABLE 1
21 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_RELAXED_AVAILABLE 0
24 #if defined(EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQUIRE)
25 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQUIRE_AVAILABLE 1
27 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQUIRE_AVAILABLE 0
30 #if defined(EASTL_ARCH_ATOMIC_THREAD_FENCE_RELEASE)
31 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_RELEASE_AVAILABLE 1
33 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_RELEASE_AVAILABLE 0
36 #if defined(EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQ_REL)
37 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQ_REL_AVAILABLE 1
39 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQ_REL_AVAILABLE 0
42 #if defined(EASTL_ARCH_ATOMIC_THREAD_FENCE_SEQ_CST)
43 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_SEQ_CST_AVAILABLE 1
45 #define EASTL_ARCH_ATOMIC_THREAD_FENCE_SEQ_CST_AVAILABLE 0