unify style for returning pointers
[c11tester.git] / libatomic.h
1 #ifndef __LIBATOMIC_H__
2 #define __LIBATOMIC_H__
3
4 typedef enum memory_order {
5         memory_order_relaxed,
6         memory_order_consume,
7         memory_order_acquire,
8         memory_order_release,
9         memory_order_acq_rel,
10         memory_order_seq_cst
11 } memory_order;
12
13 typedef struct atomic_object {
14 } atomic_int;
15
16 void atomic_store_explicit(struct atomic_object *obj, int value, memory_order order);
17 #define atomic_store(A, B) atomic_store_explicit((A), (B), memory_order_seq_cst)
18
19 int atomic_load_explicit(struct atomic_object *obj, memory_order order);
20 #define atomic_load(A) atomic_load_explicit((A), memory_order_seq_cst)
21
22 #endif /* __LIBATOMIC_H__ */