Nugget
atomic_macros_store.h
1 // Copyright (c) Electronic Arts Inc. All rights reserved.
4 
5 
6 #ifndef EASTL_ATOMIC_INTERNAL_MACROS_STORE_H
7 #define EASTL_ATOMIC_INTERNAL_MACROS_STORE_H
8 
9 #if defined(EA_PRAGMA_ONCE_SUPPORTED)
10  #pragma once
11 #endif
12 
13 
15 //
16 // void EASTL_ATOMIC_STORE_*_N(type, type * ptr, type val)
17 //
18 #define EASTL_ATOMIC_STORE_RELAXED_8(type, ptr, val) \
19  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELAXED_8)(type, ptr, val)
20 
21 #define EASTL_ATOMIC_STORE_RELEASE_8(type, ptr, val) \
22  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELEASE_8)(type, ptr, val)
23 
24 #define EASTL_ATOMIC_STORE_SEQ_CST_8(type, ptr, val) \
25  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_SEQ_CST_8)(type, ptr, val)
26 
27 
28 #define EASTL_ATOMIC_STORE_RELAXED_16(type, ptr, val) \
29  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELAXED_16)(type, ptr, val)
30 
31 #define EASTL_ATOMIC_STORE_RELEASE_16(type, ptr, val) \
32  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELEASE_16)(type, ptr, val)
33 
34 #define EASTL_ATOMIC_STORE_SEQ_CST_16(type, ptr, val) \
35  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_SEQ_CST_16)(type, ptr, val)
36 
37 
38 #define EASTL_ATOMIC_STORE_RELAXED_32(type, ptr, val) \
39  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELAXED_32)(type, ptr, val)
40 
41 #define EASTL_ATOMIC_STORE_RELEASE_32(type, ptr, val) \
42  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELEASE_32)(type, ptr, val)
43 
44 #define EASTL_ATOMIC_STORE_SEQ_CST_32(type, ptr, val) \
45  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_SEQ_CST_32)(type, ptr, val)
46 
47 
48 #define EASTL_ATOMIC_STORE_RELAXED_64(type, ptr, val) \
49  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELAXED_64)(type, ptr, val)
50 
51 #define EASTL_ATOMIC_STORE_RELEASE_64(type, ptr, val) \
52  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELEASE_64)(type, ptr, val)
53 
54 #define EASTL_ATOMIC_STORE_SEQ_CST_64(type, ptr, val) \
55  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_SEQ_CST_64)(type, ptr, val)
56 
57 
58 #define EASTL_ATOMIC_STORE_RELAXED_128(type, ptr, val) \
59  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELAXED_128)(type, ptr, val)
60 
61 #define EASTL_ATOMIC_STORE_RELEASE_128(type, ptr, val) \
62  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_RELEASE_128)(type, ptr, val)
63 
64 #define EASTL_ATOMIC_STORE_SEQ_CST_128(type, ptr, val) \
65  EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_STORE_SEQ_CST_128)(type, ptr, val)
66 
67 
68 #endif /* EASTL_ATOMIC_INTERNAL_MACROS_STORE_H */