Lines Matching refs:mo
19 #define _uatomic_default_mo(dflt, mo...) \
20 _uatomic_select_arg1(_, ##mo, dflt)
22 #define _uatomic_default_mo2(dflt, mo...) \
23 _uatomic_select_arg2(_, ##mo, dflt, dflt)
25 #define uatomic_load(addr, mo...) \
26 uatomic_load_mo(addr, _uatomic_default_mo(CMM_RELAXED, ##mo))
28 #define uatomic_read(addr, mo...) \
29 uatomic_load_mo(addr, _uatomic_default_mo(CMM_RELAXED, ##mo))
31 #define uatomic_store(addr, value, mo...) \
32 uatomic_store_mo(addr, value, _uatomic_default_mo(CMM_RELAXED, ##mo))
34 #define uatomic_set(addr, value, mo...) \
35 uatomic_store_mo(addr, value, _uatomic_default_mo(CMM_RELAXED, ##mo))
37 #define uatomic_add_return(addr, v, mo...) \
38 uatomic_add_return_mo(addr, v, _uatomic_default_mo(CMM_SEQ_CST_FENCE, ##mo))
40 #define uatomic_sub_return(addr, v, mo...) \
41 uatomic_sub_return_mo(addr, v, _uatomic_default_mo(CMM_SEQ_CST_FENCE, ##mo))
43 #define uatomic_and(addr, mask, mo...) \
44 uatomic_and_mo(addr, mask, _uatomic_default_mo(CMM_SEQ_CST, ##mo))
46 #define uatomic_or(addr, mask, mo...) \
47 uatomic_or_mo(addr, mask, _uatomic_default_mo(CMM_RELAXED, ##mo))
49 #define uatomic_add(addr, v, mo...) \
50 uatomic_add_mo(addr, v, _uatomic_default_mo(CMM_RELAXED, ##mo))
52 #define uatomic_sub(addr, v, mo...) \
53 uatomic_sub_mo(addr, v, _uatomic_default_mo(CMM_RELAXED, ##mo))
55 #define uatomic_inc(addr, mo...) \
56 uatomic_inc_mo(addr, _uatomic_default_mo(CMM_RELAXED, ##mo))
58 #define uatomic_dec(addr, mo...) \
59 uatomic_dec_mo(addr, _uatomic_default_mo(CMM_RELAXED, ##mo))
61 #define uatomic_xchg(addr, value, mo...) \
63 _uatomic_default_mo(CMM_SEQ_CST_FENCE, ##mo))
65 #define uatomic_cmpxchg(addr, value, _new, mo...) \
67 _uatomic_default_mo(CMM_SEQ_CST_FENCE, ##mo), \
68 _uatomic_default_mo2(CMM_RELAXED, ##mo))