vsync / atomic / dispatch.h
Set of macros to dispatch atomic functions.
These macros select the atomic function variant based on the argument type, for example, vatomic_read(a) calls vatomic32_read(a) if a is a vatomic32_t and calls vatomic64_read(a) if a is a vatomic64_t. vatomicptr_t is mapped to either 32 or 64 bits functions depending on the architecture.
Macros
| Macro | Description |
|---|---|
| vatomic_init | Dispatches init calls with configurable memory order. |
| vatomic_read | Dispatches read calls with seq_cst memory order. |
| vatomic_read_acq | Dispatches read calls with acquire memory order. |
| vatomic_read_rlx | Dispatches read calls with relaxed memory order. |
| vatomic_write | Dispatches write calls with seq_cst memory order. |
| vatomic_write_rel | Dispatches write calls with release memory order. |
| vatomic_write_rlx | Dispatches write calls with relaxed memory order. |
| vatomic_xchg | Dispatches xchg calls with seq_cst memory order. |
| vatomic_xchg_acq | Dispatches xchg calls with acquire memory order. |
| vatomic_xchg_rel | Dispatches xchg calls with release memory order. |
| vatomic_xchg_rlx | Dispatches xchg calls with relaxed memory order. |
| vatomic_cmpxchg | Dispatches cmpxchg calls with seq_cst memory order. |
| vatomic_cmpxchg_acq | Dispatches cmpxchg calls with acquire memory order. |
| vatomic_cmpxchg_rel | Dispatches cmpxchg calls with release memory order. |
| vatomic_cmpxchg_rlx | Dispatches cmpxchg calls with relaxed memory order. |
| vatomic_inc | Dispatches inc calls with seq_cst memory order. |
| vatomic_inc_rel | Dispatches inc calls with release memory order. |
| vatomic_inc_rlx | Dispatches inc calls with relaxed memory order. |
| vatomic_dec | Dispatches dec calls with seq_cst memory order. |
| vatomic_dec_rel | Dispatches dec calls with release memory order. |
| vatomic_dec_rlx | Dispatches dec calls with relaxed memory order. |
| vatomic_inc_get | Dispatches inc_get calls with seq_cst memory order. |
| vatomic_inc_get_acq | Dispatches inc_get calls with acquire memory order. |
| vatomic_inc_get_rel | Dispatches inc_get calls with release memory order. |
| vatomic_inc_get_rlx | Dispatches inc_get calls with relaxed memory order. |
| vatomic_dec_get | Dispatches dec_get calls with seq_cst memory order. |
| vatomic_dec_get_acq | Dispatches dec_get calls with acquire memory order. |
| vatomic_dec_get_rel | Dispatches dec_get calls with release memory order. |
| vatomic_dec_get_rlx | Dispatches dec_get calls with relaxed memory order. |
| vatomic_get_inc | Dispatches get_inc calls with seq_cst memory order. |
| vatomic_get_inc_acq | Dispatches get_inc calls with acquire memory order. |
| vatomic_get_inc_rel | Dispatches get_inc calls with release memory order. |
| vatomic_get_inc_rlx | Dispatches get_inc calls with relaxed memory order. |
| vatomic_get_dec | Dispatches get_dec calls with seq_cst memory order. |
| vatomic_get_dec_acq | Dispatches get_dec calls with acquire memory order. |
| vatomic_get_dec_rel | Dispatches get_dec calls with release memory order. |
| vatomic_get_dec_rlx | Dispatches get_dec calls with relaxed memory order. |
| vatomic_add | Dispatches add calls with seq_cst memory order. |
| vatomic_add_rel | Dispatches add calls with release memory order. |
| vatomic_add_rlx | Dispatches add calls with relaxed memory order. |
| vatomic_sub | Dispatches sub calls with seq_cst memory order. |
| vatomic_sub_rel | Dispatches sub calls with release memory order. |
| vatomic_sub_rlx | Dispatches sub calls with relaxed memory order. |
| vatomic_and | Dispatches and calls with seq_cst memory order. |
| vatomic_and_rel | Dispatches and calls with release memory order. |
| vatomic_and_rlx | Dispatches and calls with relaxed memory order. |
| vatomic_xor | Dispatches xor calls with seq_cst memory order. |
| vatomic_xor_rel | Dispatches xor calls with release memory order. |
| vatomic_xor_rlx | Dispatches xor calls with relaxed memory order. |
| vatomic_or | Dispatches or calls with seq_cst memory order. |
| vatomic_or_rel | Dispatches or calls with release memory order. |
| vatomic_or_rlx | Dispatches or calls with relaxed memory order. |
| vatomic_max | Dispatches max calls with seq_cst memory order. |
| vatomic_max_rel | Dispatches max calls with release memory order. |
| vatomic_max_rlx | Dispatches max calls with relaxed memory order. |
| vatomic_add_get | Dispatches add_get calls with seq_cst memory order. |
| vatomic_add_get_acq | Dispatches add_get calls with acquire memory order. |
| vatomic_add_get_rel | Dispatches add_get calls with release memory order. |
| vatomic_add_get_rlx | Dispatches add_get calls with relaxed memory order. |
| vatomic_sub_get | Dispatches sub_get calls with seq_cst memory order. |
| vatomic_sub_get_acq | Dispatches sub_get calls with acquire memory order. |
| vatomic_sub_get_rel | Dispatches sub_get calls with release memory order. |
| vatomic_sub_get_rlx | Dispatches sub_get calls with relaxed memory order. |
| vatomic_and_get | Dispatches and_get calls with seq_cst memory order. |
| vatomic_and_get_acq | Dispatches and_get calls with acquire memory order. |
| vatomic_and_get_rel | Dispatches and_get calls with release memory order. |
| vatomic_and_get_rlx | Dispatches and_get calls with relaxed memory order. |
| vatomic_xor_get | Dispatches xor_get calls with seq_cst memory order. |
| vatomic_xor_get_acq | Dispatches xor_get calls with acquire memory order. |
| vatomic_xor_get_rel | Dispatches xor_get calls with release memory order. |
| vatomic_xor_get_rlx | Dispatches xor_get calls with relaxed memory order. |
| vatomic_or_get | Dispatches or_get calls with seq_cst memory order. |
| vatomic_or_get_acq | Dispatches or_get calls with acquire memory order. |
| vatomic_or_get_rel | Dispatches or_get calls with release memory order. |
| vatomic_or_get_rlx | Dispatches or_get calls with relaxed memory order. |
| vatomic_max_get | Dispatches max_get calls with seq_cst memory order. |
| vatomic_max_get_acq | Dispatches max_get calls with acquire memory order. |
| vatomic_max_get_rel | Dispatches max_get calls with release memory order. |
| vatomic_max_get_rlx | Dispatches max_get calls with relaxed memory order. |
| vatomic_get_add | Dispatches get_add calls with seq_cst memory order. |
| vatomic_get_sub | Dispatches get_sub calls with seq_cst memory order. |
| vatomic_get_and | Dispatches get_and calls with seq_cst memory order. |
| vatomic_get_xor | Dispatches get_xor calls with seq_cst memory order. |
| vatomic_get_or | Dispatches get_or calls with seq_cst memory order. |
| vatomic_get_max | Dispatches get_max calls with seq_cst memory order. |
| vatomic_await_eq | Dispatches await_eq calls with seq_cst memory order. |
| vatomic_await_eq_acq | Dispatches await_eq calls with acquire memory order. |
| vatomic_await_eq_rlx | Dispatches await_eq calls with relaxed memory order. |
| vatomic_await_neq | Dispatches await_neq calls with seq_cst memory order. |
| vatomic_await_neq_acq | Dispatches await_neq calls with acquire memory order. |
| vatomic_await_neq_rlx | Dispatches await_neq calls with relaxed memory order. |
| vatomic_await_le | Dispatches await_le calls with seq_cst memory order. |
| vatomic_await_le_acq | Dispatches await_le calls with acquire memory order. |
| vatomic_await_le_rlx | Dispatches await_le calls with relaxed memory order. |
| vatomic_await_lt | Dispatches await_lt calls with seq_cst memory order. |
| vatomic_await_lt_acq | Dispatches await_lt calls with acquire memory order. |
| vatomic_await_lt_rlx | Dispatches await_lt calls with relaxed memory order. |
| vatomic_await_gt | Dispatches await_gt calls with seq_cst memory order. |
| vatomic_await_gt_acq | Dispatches await_gt calls with acquire memory order. |
| vatomic_await_gt_rlx | Dispatches await_gt calls with relaxed memory order. |
| vatomic_await_ge | Dispatches await_ge calls with seq_cst memory order. |
| vatomic_await_ge_acq | Dispatches await_ge calls with acquire memory order. |
| vatomic_await_ge_rlx | Dispatches await_ge calls with relaxed memory order. |
| vatomic_await_eq_set | Dispatches await_eq_set calls with seq_cst memory order. |
| vatomic_await_eq_set_acq | Dispatches await_eq_set calls with acquire memory order. |
| vatomic_await_eq_set_rel | Dispatches await_eq_set calls with release memory order. |
| vatomic_await_eq_set_rlx | Dispatches await_eq_set calls with relaxed memory order. |
| vatomic_await_eq_sub | Dispatches await_eq_sub calls with seq_cst memory order. |
| vatomic_await_eq_sub_acq | Dispatches await_eq_sub calls with acquire memory order. |
| vatomic_await_eq_sub_rel | Dispatches await_eq_sub calls with release memory order. |
| vatomic_await_eq_sub_rlx | Dispatches await_eq_sub calls with relaxed memory order. |
| vatomic_await_eq_add | Dispatches await_eq_add calls with seq_cst memory order. |
| vatomic_await_eq_add_acq | Dispatches await_eq_add calls with acquire memory order. |
| vatomic_await_eq_add_rel | Dispatches await_eq_add calls with release memory order. |
| vatomic_await_eq_add_rlx | Dispatches await_eq_add calls with relaxed memory order. |
| vatomic_await_neq_set | Dispatches await_neq_set calls with seq_cst memory order. |
| vatomic_await_neq_set_acq | Dispatches await_neq_set calls with acquire memory order. |
| vatomic_await_neq_set_rel | Dispatches await_neq_set calls with release memory order. |
| vatomic_await_neq_set_rlx | Dispatches await_neq_set calls with relaxed memory order. |
| vatomic_await_neq_sub | Dispatches await_neq_sub calls with seq_cst memory order. |
| vatomic_await_neq_sub_acq | Dispatches await_neq_sub calls with acquire memory order. |
| vatomic_await_neq_sub_rel | Dispatches await_neq_sub calls with release memory order. |
| vatomic_await_neq_sub_rlx | Dispatches await_neq_sub calls with relaxed memory order. |
| vatomic_await_neq_add | Dispatches await_neq_add calls with seq_cst memory order. |
| vatomic_await_neq_add_acq | Dispatches await_neq_add calls with acquire memory order. |
| vatomic_await_neq_add_rel | Dispatches await_neq_add calls with release memory order. |
| vatomic_await_neq_add_rlx | Dispatches await_neq_add calls with relaxed memory order. |
| vatomic_await_le_set | Dispatches await_le_set calls with seq_cst memory order. |
| vatomic_await_le_set_acq | Dispatches await_le_set calls with acquire memory order. |
| vatomic_await_le_set_rel | Dispatches await_le_set calls with release memory order. |
| vatomic_await_le_set_rlx | Dispatches await_le_set calls with relaxed memory order. |
| vatomic_await_le_sub | Dispatches await_le_sub calls with seq_cst memory order. |
| vatomic_await_le_sub_acq | Dispatches await_le_sub calls with acquire memory order. |
| vatomic_await_le_sub_rel | Dispatches await_le_sub calls with release memory order. |
| vatomic_await_le_sub_rlx | Dispatches await_le_sub calls with relaxed memory order. |
| vatomic_await_le_add | Dispatches await_le_add calls with seq_cst memory order. |
| vatomic_await_le_add_acq | Dispatches await_le_add calls with acquire memory order. |
| vatomic_await_le_add_rel | Dispatches await_le_add calls with release memory order. |
| vatomic_await_le_add_rlx | Dispatches await_le_add calls with relaxed memory order. |
| vatomic_await_lt_set | Dispatches await_lt_set calls with seq_cst memory order. |
| vatomic_await_lt_set_acq | Dispatches await_lt_set calls with acquire memory order. |
| vatomic_await_lt_set_rel | Dispatches await_lt_set calls with release memory order. |
| vatomic_await_lt_set_rlx | Dispatches await_lt_set calls with relaxed memory order. |
| vatomic_await_lt_sub | Dispatches await_lt_sub calls with seq_cst memory order. |
| vatomic_await_lt_sub_acq | Dispatches await_lt_sub calls with acquire memory order. |
| vatomic_await_lt_sub_rel | Dispatches await_lt_sub calls with release memory order. |
| vatomic_await_lt_sub_rlx | Dispatches await_lt_sub calls with relaxed memory order. |
| vatomic_await_lt_add | Dispatches await_lt_add calls with seq_cst memory order. |
| vatomic_await_lt_add_acq | Dispatches await_lt_add calls with acquire memory order. |
| vatomic_await_lt_add_rel | Dispatches await_lt_add calls with release memory order. |
| vatomic_await_lt_add_rlx | Dispatches await_lt_add calls with relaxed memory order. |
| vatomic_await_gt_set | Dispatches await_gt_set calls with seq_cst memory order. |
| vatomic_await_gt_set_acq | Dispatches await_gt_set calls with acquire memory order. |
| vatomic_await_gt_set_rel | Dispatches await_gt_set calls with release memory order. |
| vatomic_await_gt_set_rlx | Dispatches await_gt_set calls with relaxed memory order. |
| vatomic_await_gt_sub | Dispatches await_gt_sub calls with seq_cst memory order. |
| vatomic_await_gt_sub_acq | Dispatches await_gt_sub calls with acquire memory order. |
| vatomic_await_gt_sub_rel | Dispatches await_gt_sub calls with release memory order. |
| vatomic_await_gt_sub_rlx | Dispatches await_gt_sub calls with relaxed memory order. |
| vatomic_await_gt_add | Dispatches await_gt_add calls with seq_cst memory order. |
| vatomic_await_gt_add_acq | Dispatches await_gt_add calls with acquire memory order. |
| vatomic_await_gt_add_rel | Dispatches await_gt_add calls with release memory order. |
| vatomic_await_gt_add_rlx | Dispatches await_gt_add calls with relaxed memory order. |
| vatomic_await_ge_set | Dispatches await_ge_set calls with seq_cst memory order. |
| vatomic_await_ge_set_acq | Dispatches await_ge_set calls with acquire memory order. |
| vatomic_await_ge_set_rel | Dispatches await_ge_set calls with release memory order. |
| vatomic_await_ge_set_rlx | Dispatches await_ge_set calls with relaxed memory order. |
| vatomic_await_ge_sub | Dispatches await_ge_sub calls with seq_cst memory order. |
| vatomic_await_ge_sub_acq | Dispatches await_ge_sub calls with acquire memory order. |
| vatomic_await_ge_sub_rel | Dispatches await_ge_sub calls with release memory order. |
| vatomic_await_ge_sub_rlx | Dispatches await_ge_sub calls with relaxed memory order. |
| vatomic_await_ge_add | Dispatches await_ge_add calls with seq_cst memory order. |
| vatomic_await_ge_add_acq | Dispatches await_ge_add calls with acquire memory order. |
| vatomic_await_ge_add_rel | Dispatches await_ge_add calls with release memory order. |
| vatomic_await_ge_add_rlx | Dispatches await_ge_add calls with relaxed memory order. |
Macro vatomic_init
vatomic_init(a,v)
Dispatches init calls with configurable memory order.
See vatomic32_init for details.
Parameters:
a: atomic variablev: initial value
Macro vatomic_read
vatomic_read(a)
Dispatches read calls with seq_cst memory order.
See vatomic32_read for details.
Parameters:
a: atomic variable
Returns: current value
Memory ordering: seq_cst
Macro vatomic_read_acq
vatomic_read_acq(a)
Dispatches read calls with acquire memory order.
See vatomic32_read_acq for details.
Parameters:
a: atomic variable
Returns: current value
Memory ordering: acquire
Macro vatomic_read_rlx
vatomic_read_rlx(a)
Dispatches read calls with relaxed memory order.
See vatomic32_read_rlx for details.
Parameters:
a: atomic variable
Returns: current value
Memory ordering: relaxed
Macro vatomic_write
vatomic_write(a,v)
Dispatches write calls with seq_cst memory order.
See vatomic32_write for details.
Parameters:
a: atomic variablev: new value
Memory ordering: seq_cst
Macro vatomic_write_rel
vatomic_write_rel(a,v)
Dispatches write calls with release memory order.
See vatomic32_write_rel for details.
Parameters:
a: atomic variablev: new value
Memory ordering: release
Macro vatomic_write_rlx
vatomic_write_rlx(a,v)
Dispatches write calls with relaxed memory order.
See vatomic32_write_rlx for details.
Parameters:
a: atomic variablev: new value
Memory ordering: relaxed
Macro vatomic_xchg
vatomic_xchg(a,v)
Dispatches xchg calls with seq_cst memory order.
See vatomic32_xchg for details.
Parameters:
a: atomic variablev: new value
Returns: old value
Memory ordering: seq_cst
Macro vatomic_xchg_acq
vatomic_xchg_acq(a,v)
Dispatches xchg calls with acquire memory order.
See vatomic32_xchg_acq for details.
Parameters:
a: atomic variablev: new value
Returns: old value
Memory ordering: acquire
Macro vatomic_xchg_rel
vatomic_xchg_rel(a,v)
Dispatches xchg calls with release memory order.
See vatomic32_xchg_rel for details.
Parameters:
a: atomic variablev: new value
Returns: old value
Memory ordering: release
Macro vatomic_xchg_rlx
vatomic_xchg_rlx(a,v)
Dispatches xchg calls with relaxed memory order.
See vatomic32_xchg_rlx for details.
Parameters:
a: atomic variablev: new value
Returns: old value
Memory ordering: relaxed
Macro vatomic_cmpxchg
vatomic_cmpxchg(a,c,v)
Dispatches cmpxchg calls with seq_cst memory order.
See vatomic32_cmpxchg for details.
Parameters:
a: atomic variablec: expected valuev: new value
Returns: old value
Memory ordering: seq_cst
Macro vatomic_cmpxchg_acq
vatomic_cmpxchg_acq(a,c,v)
Dispatches cmpxchg calls with acquire memory order.
See vatomic32_cmpxchg_acq for details.
Parameters:
a: atomic variablec: expected valuev: new value
Returns: old value
Memory ordering: acquire
Macro vatomic_cmpxchg_rel
vatomic_cmpxchg_rel(a,c,v)
Dispatches cmpxchg calls with release memory order.
See vatomic32_cmpxchg_rel for details.
Parameters:
a: atomic variablec: expected valuev: new value
Returns: old value
Memory ordering: release
Macro vatomic_cmpxchg_rlx
vatomic_cmpxchg_rlx(a,c,v)
Dispatches cmpxchg calls with relaxed memory order.
See vatomic32_cmpxchg_rlx for details.
Parameters:
a: atomic variablec: expected valuev: new value
Returns: old value
Memory ordering: relaxed
Macro vatomic_inc
vatomic_inc(a)
Dispatches inc calls with seq_cst memory order.
See vatomic32_inc for details.
Parameters:
a: atomic variable
Memory ordering: seq_cst
Macro vatomic_inc_rel
vatomic_inc_rel(a)
Dispatches inc calls with release memory order.
See vatomic32_inc_rel for details.
Parameters:
a: atomic variable
Memory ordering: release
Macro vatomic_inc_rlx
vatomic_inc_rlx(a)
Dispatches inc calls with relaxed memory order.
See vatomic32_inc_rlx for details.
Parameters:
a: atomic variable
Memory ordering: relaxed
Macro vatomic_dec
vatomic_dec(a)
Dispatches dec calls with seq_cst memory order.
See vatomic32_dec for details.
Parameters:
a: atomic variable
Memory ordering: seq_cst
Macro vatomic_dec_rel
vatomic_dec_rel(a)
Dispatches dec calls with release memory order.
See vatomic32_dec_rel for details.
Parameters:
a: atomic variable
Memory ordering: release
Macro vatomic_dec_rlx
vatomic_dec_rlx(a)
Dispatches dec calls with relaxed memory order.
See vatomic32_dec_rlx for details.
Parameters:
a: atomic variable
Memory ordering: relaxed
Macro vatomic_inc_get
vatomic_inc_get(a)
Dispatches inc_get calls with seq_cst memory order.
See vatomic32_inc_get for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: seq_cst
Macro vatomic_inc_get_acq
vatomic_inc_get_acq(a)
Dispatches inc_get calls with acquire memory order.
See vatomic32_inc_get_acq for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: acquire
Macro vatomic_inc_get_rel
vatomic_inc_get_rel(a)
Dispatches inc_get calls with release memory order.
See vatomic32_inc_get_rel for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: release
Macro vatomic_inc_get_rlx
vatomic_inc_get_rlx(a)
Dispatches inc_get calls with relaxed memory order.
See vatomic32_inc_get_rlx for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: relaxed
Macro vatomic_dec_get
vatomic_dec_get(a)
Dispatches dec_get calls with seq_cst memory order.
See vatomic32_dec_get for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: seq_cst
Macro vatomic_dec_get_acq
vatomic_dec_get_acq(a)
Dispatches dec_get calls with acquire memory order.
See vatomic32_dec_get_acq for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: acquire
Macro vatomic_dec_get_rel
vatomic_dec_get_rel(a)
Dispatches dec_get calls with release memory order.
See vatomic32_dec_get_rel for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: release
Macro vatomic_dec_get_rlx
vatomic_dec_get_rlx(a)
Dispatches dec_get calls with relaxed memory order.
See vatomic32_dec_get_rlx for details.
Parameters:
a: atomic variable
Returns: new value
Memory ordering: relaxed
Macro vatomic_get_inc
vatomic_get_inc(a)
Dispatches get_inc calls with seq_cst memory order.
See vatomic32_get_inc for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: seq_cst
Macro vatomic_get_inc_acq
vatomic_get_inc_acq(a)
Dispatches get_inc calls with acquire memory order.
See vatomic32_get_inc_acq for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: acquire
Macro vatomic_get_inc_rel
vatomic_get_inc_rel(a)
Dispatches get_inc calls with release memory order.
See vatomic32_get_inc_rel for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: release
Macro vatomic_get_inc_rlx
vatomic_get_inc_rlx(a)
Dispatches get_inc calls with relaxed memory order.
See vatomic32_get_inc_rlx for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: relaxed
Macro vatomic_get_dec
vatomic_get_dec(a)
Dispatches get_dec calls with seq_cst memory order.
See vatomic32_get_dec for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: seq_cst
Macro vatomic_get_dec_acq
vatomic_get_dec_acq(a)
Dispatches get_dec calls with acquire memory order.
See vatomic32_get_dec_acq for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: acquire
Macro vatomic_get_dec_rel
vatomic_get_dec_rel(a)
Dispatches get_dec calls with release memory order.
See vatomic32_get_dec_rel for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: release
Macro vatomic_get_dec_rlx
vatomic_get_dec_rlx(a)
Dispatches get_dec calls with relaxed memory order.
See vatomic32_get_dec_rlx for details.
Parameters:
a: atomic variable
Returns: old value
Memory ordering: relaxed
Macro vatomic_add
vatomic_add(a,v)
Dispatches add calls with seq_cst memory order.
See vatomic32_add for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: seq_cst
Macro vatomic_add_rel
vatomic_add_rel(a,v)
Dispatches add calls with release memory order.
See vatomic32_add_rel for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: release
Macro vatomic_add_rlx
vatomic_add_rlx(a,v)
Dispatches add calls with relaxed memory order.
See vatomic32_add_rlx for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: relaxed
Macro vatomic_sub
vatomic_sub(a,v)
Dispatches sub calls with seq_cst memory order.
See vatomic32_sub for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: seq_cst
Macro vatomic_sub_rel
vatomic_sub_rel(a,v)
Dispatches sub calls with release memory order.
See vatomic32_sub_rel for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: release
Macro vatomic_sub_rlx
vatomic_sub_rlx(a,v)
Dispatches sub calls with relaxed memory order.
See vatomic32_sub_rlx for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: relaxed
Macro vatomic_and
vatomic_and(a,v)
Dispatches and calls with seq_cst memory order.
See vatomic32_and for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: seq_cst
Macro vatomic_and_rel
vatomic_and_rel(a,v)
Dispatches and calls with release memory order.
See vatomic32_and_rel for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: release
Macro vatomic_and_rlx
vatomic_and_rlx(a,v)
Dispatches and calls with relaxed memory order.
See vatomic32_and_rlx for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: relaxed
Macro vatomic_xor
vatomic_xor(a,v)
Dispatches xor calls with seq_cst memory order.
See vatomic32_xor for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: seq_cst
Macro vatomic_xor_rel
vatomic_xor_rel(a,v)
Dispatches xor calls with release memory order.
See vatomic32_xor_rel for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: release
Macro vatomic_xor_rlx
vatomic_xor_rlx(a,v)
Dispatches xor calls with relaxed memory order.
See vatomic32_xor_rlx for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: relaxed
Macro vatomic_or
vatomic_or(a,v)
Dispatches or calls with seq_cst memory order.
See vatomic32_or for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: seq_cst
Macro vatomic_or_rel
vatomic_or_rel(a,v)
Dispatches or calls with release memory order.
See vatomic32_or_rel for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: release
Macro vatomic_or_rlx
vatomic_or_rlx(a,v)
Dispatches or calls with relaxed memory order.
See vatomic32_or_rlx for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: relaxed
Macro vatomic_max
vatomic_max(a,v)
Dispatches max calls with seq_cst memory order.
See vatomic32_max for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: seq_cst
Macro vatomic_max_rel
vatomic_max_rel(a,v)
Dispatches max calls with release memory order.
See vatomic32_max_rel for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: release
Macro vatomic_max_rlx
vatomic_max_rlx(a,v)
Dispatches max calls with relaxed memory order.
See vatomic32_max_rlx for details.
Parameters:
a: atomic variablev: operand value
Memory ordering: relaxed
Macro vatomic_add_get
vatomic_add_get(a,v)
Dispatches add_get calls with seq_cst memory order.
See vatomic32_add_get for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: seq_cst
Macro vatomic_add_get_acq
vatomic_add_get_acq(a,v)
Dispatches add_get calls with acquire memory order.
See vatomic32_add_get_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: acquire
Macro vatomic_add_get_rel
vatomic_add_get_rel(a,v)
Dispatches add_get calls with release memory order.
See vatomic32_add_get_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: release
Macro vatomic_add_get_rlx
vatomic_add_get_rlx(a,v)
Dispatches add_get calls with relaxed memory order.
See vatomic32_add_get_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: relaxed
Macro vatomic_sub_get
vatomic_sub_get(a,v)
Dispatches sub_get calls with seq_cst memory order.
See vatomic32_sub_get for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: seq_cst
Macro vatomic_sub_get_acq
vatomic_sub_get_acq(a,v)
Dispatches sub_get calls with acquire memory order.
See vatomic32_sub_get_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: acquire
Macro vatomic_sub_get_rel
vatomic_sub_get_rel(a,v)
Dispatches sub_get calls with release memory order.
See vatomic32_sub_get_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: release
Macro vatomic_sub_get_rlx
vatomic_sub_get_rlx(a,v)
Dispatches sub_get calls with relaxed memory order.
See vatomic32_sub_get_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: relaxed
Macro vatomic_and_get
vatomic_and_get(a,v)
Dispatches and_get calls with seq_cst memory order.
See vatomic32_and_get for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: seq_cst
Macro vatomic_and_get_acq
vatomic_and_get_acq(a,v)
Dispatches and_get calls with acquire memory order.
See vatomic32_and_get_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: acquire
Macro vatomic_and_get_rel
vatomic_and_get_rel(a,v)
Dispatches and_get calls with release memory order.
See vatomic32_and_get_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: release
Macro vatomic_and_get_rlx
vatomic_and_get_rlx(a,v)
Dispatches and_get calls with relaxed memory order.
See vatomic32_and_get_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: relaxed
Macro vatomic_xor_get
vatomic_xor_get(a,v)
Dispatches xor_get calls with seq_cst memory order.
See vatomic32_xor_get for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: seq_cst
Macro vatomic_xor_get_acq
vatomic_xor_get_acq(a,v)
Dispatches xor_get calls with acquire memory order.
See vatomic32_xor_get_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: acquire
Macro vatomic_xor_get_rel
vatomic_xor_get_rel(a,v)
Dispatches xor_get calls with release memory order.
See vatomic32_xor_get_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: release
Macro vatomic_xor_get_rlx
vatomic_xor_get_rlx(a,v)
Dispatches xor_get calls with relaxed memory order.
See vatomic32_xor_get_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: relaxed
Macro vatomic_or_get
vatomic_or_get(a,v)
Dispatches or_get calls with seq_cst memory order.
See vatomic32_or_get for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: seq_cst
Macro vatomic_or_get_acq
vatomic_or_get_acq(a,v)
Dispatches or_get calls with acquire memory order.
See vatomic32_or_get_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: acquire
Macro vatomic_or_get_rel
vatomic_or_get_rel(a,v)
Dispatches or_get calls with release memory order.
See vatomic32_or_get_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: release
Macro vatomic_or_get_rlx
vatomic_or_get_rlx(a,v)
Dispatches or_get calls with relaxed memory order.
See vatomic32_or_get_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: relaxed
Macro vatomic_max_get
vatomic_max_get(a,v)
Dispatches max_get calls with seq_cst memory order.
See vatomic32_max_get for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: seq_cst
Macro vatomic_max_get_acq
vatomic_max_get_acq(a,v)
Dispatches max_get calls with acquire memory order.
See vatomic32_max_get_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: acquire
Macro vatomic_max_get_rel
vatomic_max_get_rel(a,v)
Dispatches max_get calls with release memory order.
See vatomic32_max_get_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: release
Macro vatomic_max_get_rlx
vatomic_max_get_rlx(a,v)
Dispatches max_get calls with relaxed memory order.
See vatomic32_max_get_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: new value
Memory ordering: relaxed
Macro vatomic_get_add
vatomic_get_add(a,v)
Dispatches get_add calls with seq_cst memory order.
Dispatches get_add calls with relaxed memory order.
Dispatches get_add calls with release memory order.
Dispatches get_add calls with acquire memory order.
See vatomic32_get_add for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: seq_cst
See vatomic32_get_add_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: acquire
See vatomic32_get_add_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: release
See vatomic32_get_add_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: relaxed
Macro vatomic_get_sub
vatomic_get_sub(a,v)
Dispatches get_sub calls with seq_cst memory order.
Dispatches get_sub calls with relaxed memory order.
Dispatches get_sub calls with release memory order.
Dispatches get_sub calls with acquire memory order.
See vatomic32_get_sub for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: seq_cst
See vatomic32_get_sub_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: acquire
See vatomic32_get_sub_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: release
See vatomic32_get_sub_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: relaxed
Macro vatomic_get_and
vatomic_get_and(a,v)
Dispatches get_and calls with seq_cst memory order.
Dispatches get_and calls with relaxed memory order.
Dispatches get_and calls with release memory order.
Dispatches get_and calls with acquire memory order.
See vatomic32_get_and for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: seq_cst
See vatomic32_get_and_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: acquire
See vatomic32_get_and_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: release
See vatomic32_get_and_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: relaxed
Macro vatomic_get_xor
vatomic_get_xor(a,v)
Dispatches get_xor calls with seq_cst memory order.
Dispatches get_xor calls with relaxed memory order.
Dispatches get_xor calls with release memory order.
Dispatches get_xor calls with acquire memory order.
See vatomic32_get_xor for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: seq_cst
See vatomic32_get_xor_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: acquire
See vatomic32_get_xor_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: release
See vatomic32_get_xor_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: relaxed
Macro vatomic_get_or
vatomic_get_or(a,v)
Dispatches get_or calls with seq_cst memory order.
Dispatches get_or calls with relaxed memory order.
Dispatches get_or calls with release memory order.
Dispatches get_or calls with acquire memory order.
See vatomic32_get_or for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: seq_cst
See vatomic32_get_or_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: acquire
See vatomic32_get_or_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: release
See vatomic32_get_or_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: relaxed
Macro vatomic_get_max
vatomic_get_max(a,v)
Dispatches get_max calls with seq_cst memory order.
Dispatches get_max calls with relaxed memory order.
Dispatches get_max calls with release memory order.
Dispatches get_max calls with acquire memory order.
See vatomic32_get_max for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: seq_cst
See vatomic32_get_max_acq for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: acquire
See vatomic32_get_max_rel for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: release
See vatomic32_get_max_rlx for details.
Parameters:
a: atomic variablev: operand value
Returns: old value
Memory ordering: relaxed
Macro vatomic_await_eq
vatomic_await_eq(a,c)
Dispatches await_eq calls with seq_cst memory order.
See vatomic32_await_eq for details.
Parameters:
a: atomic variablec: condition value
Returns: previously read value
Memory ordering: seq_cst
Macro vatomic_await_eq_acq
vatomic_await_eq_acq(a,c)
Dispatches await_eq calls with acquire memory order.
See vatomic32_await_eq_acq for details.
Parameters:
a: atomic variablec: condition value
Returns: previously read value
Memory ordering: acquire
Macro vatomic_await_eq_rlx
vatomic_await_eq_rlx(a,c)
Dispatches await_eq calls with relaxed memory order.
See vatomic32_await_eq_rlx for details.
Parameters:
a: atomic variablec: condition value
Returns: previously read value
Memory ordering: relaxed
Macro vatomic_await_neq
vatomic_await_neq(a,c)
Dispatches await_neq calls with seq_cst memory order.
See vatomic32_await_neq for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_neq_acq
vatomic_await_neq_acq(a,c)
Dispatches await_neq calls with acquire memory order.
See vatomic32_await_neq_acq for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_neq_rlx
vatomic_await_neq_rlx(a,c)
Dispatches await_neq calls with relaxed memory order.
See vatomic32_await_neq_rlx for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_le
vatomic_await_le(a,c)
Dispatches await_le calls with seq_cst memory order.
See vatomic32_await_le for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_le_acq
vatomic_await_le_acq(a,c)
Dispatches await_le calls with acquire memory order.
See vatomic32_await_le_acq for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_le_rlx
vatomic_await_le_rlx(a,c)
Dispatches await_le calls with relaxed memory order.
See vatomic32_await_le_rlx for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_lt
vatomic_await_lt(a,c)
Dispatches await_lt calls with seq_cst memory order.
See vatomic32_await_lt for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_lt_acq
vatomic_await_lt_acq(a,c)
Dispatches await_lt calls with acquire memory order.
See vatomic32_await_lt_acq for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_lt_rlx
vatomic_await_lt_rlx(a,c)
Dispatches await_lt calls with relaxed memory order.
See vatomic32_await_lt_rlx for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_gt
vatomic_await_gt(a,c)
Dispatches await_gt calls with seq_cst memory order.
See vatomic32_await_gt for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_gt_acq
vatomic_await_gt_acq(a,c)
Dispatches await_gt calls with acquire memory order.
See vatomic32_await_gt_acq for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_gt_rlx
vatomic_await_gt_rlx(a,c)
Dispatches await_gt calls with relaxed memory order.
See vatomic32_await_gt_rlx for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_ge
vatomic_await_ge(a,c)
Dispatches await_ge calls with seq_cst memory order.
See vatomic32_await_ge for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_ge_acq
vatomic_await_ge_acq(a,c)
Dispatches await_ge calls with acquire memory order.
See vatomic32_await_ge_acq for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_ge_rlx
vatomic_await_ge_rlx(a,c)
Dispatches await_ge calls with relaxed memory order.
See vatomic32_await_ge_rlx for details.
Parameters:
a: atomic variablec: condition value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_eq_set
vatomic_await_eq_set(a,c,v)
Dispatches await_eq_set calls with seq_cst memory order.
See vatomic32_await_eq_set_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: seq_cst
Macro vatomic_await_eq_set_acq
vatomic_await_eq_set_acq(a,c,v)
Dispatches await_eq_set calls with acquire memory order.
See vatomic32_await_eq_set_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: acquire
Macro vatomic_await_eq_set_rel
vatomic_await_eq_set_rel(a,c,v)
Dispatches await_eq_set calls with release memory order.
See vatomic32_await_eq_set_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: release
Macro vatomic_await_eq_set_rlx
vatomic_await_eq_set_rlx(a,c,v)
Dispatches await_eq_set calls with relaxed memory order.
See vatomic32_await_eq_set_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: relaxed
Macro vatomic_await_eq_sub
vatomic_await_eq_sub(a,c,v)
Dispatches await_eq_sub calls with seq_cst memory order.
See vatomic32_await_eq_sub_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: seq_cst
Macro vatomic_await_eq_sub_acq
vatomic_await_eq_sub_acq(a,c,v)
Dispatches await_eq_sub calls with acquire memory order.
See vatomic32_await_eq_sub_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: acquire
Macro vatomic_await_eq_sub_rel
vatomic_await_eq_sub_rel(a,c,v)
Dispatches await_eq_sub calls with release memory order.
See vatomic32_await_eq_sub_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: release
Macro vatomic_await_eq_sub_rlx
vatomic_await_eq_sub_rlx(a,c,v)
Dispatches await_eq_sub calls with relaxed memory order.
See vatomic32_await_eq_sub_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: relaxed
Macro vatomic_await_eq_add
vatomic_await_eq_add(a,c,v)
Dispatches await_eq_add calls with seq_cst memory order.
See vatomic32_await_eq_add_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: seq_cst
Macro vatomic_await_eq_add_acq
vatomic_await_eq_add_acq(a,c,v)
Dispatches await_eq_add calls with acquire memory order.
See vatomic32_await_eq_add_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: acquire
Macro vatomic_await_eq_add_rel
vatomic_await_eq_add_rel(a,c,v)
Dispatches await_eq_add calls with release memory order.
See vatomic32_await_eq_add_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: release
Macro vatomic_await_eq_add_rlx
vatomic_await_eq_add_rlx(a,c,v)
Dispatches await_eq_add calls with relaxed memory order.
See vatomic32_await_eq_add_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: previously read value
Memory ordering: relaxed
Macro vatomic_await_neq_set
vatomic_await_neq_set(a,c,v)
Dispatches await_neq_set calls with seq_cst memory order.
See vatomic32_await_neq_set_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_neq_set_acq
vatomic_await_neq_set_acq(a,c,v)
Dispatches await_neq_set calls with acquire memory order.
See vatomic32_await_neq_set_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_neq_set_rel
vatomic_await_neq_set_rel(a,c,v)
Dispatches await_neq_set calls with release memory order.
See vatomic32_await_neq_set_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_neq_set_rlx
vatomic_await_neq_set_rlx(a,c,v)
Dispatches await_neq_set calls with relaxed memory order.
See vatomic32_await_neq_set_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_neq_sub
vatomic_await_neq_sub(a,c,v)
Dispatches await_neq_sub calls with seq_cst memory order.
See vatomic32_await_neq_sub_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_neq_sub_acq
vatomic_await_neq_sub_acq(a,c,v)
Dispatches await_neq_sub calls with acquire memory order.
See vatomic32_await_neq_sub_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_neq_sub_rel
vatomic_await_neq_sub_rel(a,c,v)
Dispatches await_neq_sub calls with release memory order.
See vatomic32_await_neq_sub_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_neq_sub_rlx
vatomic_await_neq_sub_rlx(a,c,v)
Dispatches await_neq_sub calls with relaxed memory order.
See vatomic32_await_neq_sub_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_neq_add
vatomic_await_neq_add(a,c,v)
Dispatches await_neq_add calls with seq_cst memory order.
See vatomic32_await_neq_add_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_neq_add_acq
vatomic_await_neq_add_acq(a,c,v)
Dispatches await_neq_add calls with acquire memory order.
See vatomic32_await_neq_add_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_neq_add_rel
vatomic_await_neq_add_rel(a,c,v)
Dispatches await_neq_add calls with release memory order.
See vatomic32_await_neq_add_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_neq_add_rlx
vatomic_await_neq_add_rlx(a,c,v)
Dispatches await_neq_add calls with relaxed memory order.
See vatomic32_await_neq_add_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_le_set
vatomic_await_le_set(a,c,v)
Dispatches await_le_set calls with seq_cst memory order.
See vatomic32_await_le_set_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_le_set_acq
vatomic_await_le_set_acq(a,c,v)
Dispatches await_le_set calls with acquire memory order.
See vatomic32_await_le_set_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_le_set_rel
vatomic_await_le_set_rel(a,c,v)
Dispatches await_le_set calls with release memory order.
See vatomic32_await_le_set_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_le_set_rlx
vatomic_await_le_set_rlx(a,c,v)
Dispatches await_le_set calls with relaxed memory order.
See vatomic32_await_le_set_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_le_sub
vatomic_await_le_sub(a,c,v)
Dispatches await_le_sub calls with seq_cst memory order.
See vatomic32_await_le_sub_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_le_sub_acq
vatomic_await_le_sub_acq(a,c,v)
Dispatches await_le_sub calls with acquire memory order.
See vatomic32_await_le_sub_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_le_sub_rel
vatomic_await_le_sub_rel(a,c,v)
Dispatches await_le_sub calls with release memory order.
See vatomic32_await_le_sub_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_le_sub_rlx
vatomic_await_le_sub_rlx(a,c,v)
Dispatches await_le_sub calls with relaxed memory order.
See vatomic32_await_le_sub_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_le_add
vatomic_await_le_add(a,c,v)
Dispatches await_le_add calls with seq_cst memory order.
See vatomic32_await_le_add_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_le_add_acq
vatomic_await_le_add_acq(a,c,v)
Dispatches await_le_add calls with acquire memory order.
See vatomic32_await_le_add_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_le_add_rel
vatomic_await_le_add_rel(a,c,v)
Dispatches await_le_add calls with release memory order.
See vatomic32_await_le_add_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_le_add_rlx
vatomic_await_le_add_rlx(a,c,v)
Dispatches await_le_add calls with relaxed memory order.
See vatomic32_await_le_add_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_lt_set
vatomic_await_lt_set(a,c,v)
Dispatches await_lt_set calls with seq_cst memory order.
See vatomic32_await_lt_set_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_lt_set_acq
vatomic_await_lt_set_acq(a,c,v)
Dispatches await_lt_set calls with acquire memory order.
See vatomic32_await_lt_set_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_lt_set_rel
vatomic_await_lt_set_rel(a,c,v)
Dispatches await_lt_set calls with release memory order.
See vatomic32_await_lt_set_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_lt_set_rlx
vatomic_await_lt_set_rlx(a,c,v)
Dispatches await_lt_set calls with relaxed memory order.
See vatomic32_await_lt_set_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_lt_sub
vatomic_await_lt_sub(a,c,v)
Dispatches await_lt_sub calls with seq_cst memory order.
See vatomic32_await_lt_sub_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_lt_sub_acq
vatomic_await_lt_sub_acq(a,c,v)
Dispatches await_lt_sub calls with acquire memory order.
See vatomic32_await_lt_sub_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_lt_sub_rel
vatomic_await_lt_sub_rel(a,c,v)
Dispatches await_lt_sub calls with release memory order.
See vatomic32_await_lt_sub_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_lt_sub_rlx
vatomic_await_lt_sub_rlx(a,c,v)
Dispatches await_lt_sub calls with relaxed memory order.
See vatomic32_await_lt_sub_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_lt_add
vatomic_await_lt_add(a,c,v)
Dispatches await_lt_add calls with seq_cst memory order.
See vatomic32_await_lt_add_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_lt_add_acq
vatomic_await_lt_add_acq(a,c,v)
Dispatches await_lt_add calls with acquire memory order.
See vatomic32_await_lt_add_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_lt_add_rel
vatomic_await_lt_add_rel(a,c,v)
Dispatches await_lt_add calls with release memory order.
See vatomic32_await_lt_add_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_lt_add_rlx
vatomic_await_lt_add_rlx(a,c,v)
Dispatches await_lt_add calls with relaxed memory order.
See vatomic32_await_lt_add_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_gt_set
vatomic_await_gt_set(a,c,v)
Dispatches await_gt_set calls with seq_cst memory order.
See vatomic32_await_gt_set_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_gt_set_acq
vatomic_await_gt_set_acq(a,c,v)
Dispatches await_gt_set calls with acquire memory order.
See vatomic32_await_gt_set_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_gt_set_rel
vatomic_await_gt_set_rel(a,c,v)
Dispatches await_gt_set calls with release memory order.
See vatomic32_await_gt_set_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_gt_set_rlx
vatomic_await_gt_set_rlx(a,c,v)
Dispatches await_gt_set calls with relaxed memory order.
See vatomic32_await_gt_set_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_gt_sub
vatomic_await_gt_sub(a,c,v)
Dispatches await_gt_sub calls with seq_cst memory order.
See vatomic32_await_gt_sub_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_gt_sub_acq
vatomic_await_gt_sub_acq(a,c,v)
Dispatches await_gt_sub calls with acquire memory order.
See vatomic32_await_gt_sub_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_gt_sub_rel
vatomic_await_gt_sub_rel(a,c,v)
Dispatches await_gt_sub calls with release memory order.
See vatomic32_await_gt_sub_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_gt_sub_rlx
vatomic_await_gt_sub_rlx(a,c,v)
Dispatches await_gt_sub calls with relaxed memory order.
See vatomic32_await_gt_sub_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_gt_add
vatomic_await_gt_add(a,c,v)
Dispatches await_gt_add calls with seq_cst memory order.
See vatomic32_await_gt_add_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_gt_add_acq
vatomic_await_gt_add_acq(a,c,v)
Dispatches await_gt_add calls with acquire memory order.
See vatomic32_await_gt_add_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_gt_add_rel
vatomic_await_gt_add_rel(a,c,v)
Dispatches await_gt_add calls with release memory order.
See vatomic32_await_gt_add_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_gt_add_rlx
vatomic_await_gt_add_rlx(a,c,v)
Dispatches await_gt_add calls with relaxed memory order.
See vatomic32_await_gt_add_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_ge_set
vatomic_await_ge_set(a,c,v)
Dispatches await_ge_set calls with seq_cst memory order.
See vatomic32_await_ge_set_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_ge_set_acq
vatomic_await_ge_set_acq(a,c,v)
Dispatches await_ge_set calls with acquire memory order.
See vatomic32_await_ge_set_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_ge_set_rel
vatomic_await_ge_set_rel(a,c,v)
Dispatches await_ge_set calls with release memory order.
See vatomic32_await_ge_set_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_ge_set_rlx
vatomic_await_ge_set_rlx(a,c,v)
Dispatches await_ge_set calls with relaxed memory order.
See vatomic32_await_ge_set_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_ge_sub
vatomic_await_ge_sub(a,c,v)
Dispatches await_ge_sub calls with seq_cst memory order.
See vatomic32_await_ge_sub_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_ge_sub_acq
vatomic_await_ge_sub_acq(a,c,v)
Dispatches await_ge_sub calls with acquire memory order.
See vatomic32_await_ge_sub_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_ge_sub_rel
vatomic_await_ge_sub_rel(a,c,v)
Dispatches await_ge_sub calls with release memory order.
See vatomic32_await_ge_sub_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_ge_sub_rlx
vatomic_await_ge_sub_rlx(a,c,v)
Dispatches await_ge_sub calls with relaxed memory order.
See vatomic32_await_ge_sub_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed
Macro vatomic_await_ge_add
vatomic_await_ge_add(a,c,v)
Dispatches await_ge_add calls with seq_cst memory order.
See vatomic32_await_ge_add_seq_cst for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: seq_cst
Macro vatomic_await_ge_add_acq
vatomic_await_ge_add_acq(a,c,v)
Dispatches await_ge_add calls with acquire memory order.
See vatomic32_await_ge_add_acquire for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: acquire
Macro vatomic_await_ge_add_rel
vatomic_await_ge_add_rel(a,c,v)
Dispatches await_ge_add calls with release memory order.
See vatomic32_await_ge_add_release for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: release
Macro vatomic_await_ge_add_rlx
vatomic_await_ge_add_rlx(a,c,v)
Dispatches await_ge_add calls with relaxed memory order.
See vatomic32_await_ge_add_relaxed for details.
Parameters:
a: atomic variablec: condition valuev: operand value
Returns: value satisfying condition
Memory ordering: relaxed