|
API Reference Manual
1.48.0
|
ODP atomic operations. More...
#include <odp/visibility_begin.h>#include <odp/visibility_end.h>Go to the source code of this file.
Data Structures | |
| union | odp_atomic_op_t |
| Atomic operations. More... | |
Typedefs | |
| typedef union odp_atomic_op_t | odp_atomic_op_t |
| Atomic operations. More... | |
Functions | |
| void | odp_atomic_init_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Initialize atomic uint32 variable. More... | |
| uint32_t | odp_atomic_load_u32 (odp_atomic_u32_t *atom) |
| Load value of atomic uint32 variable. More... | |
| void | odp_atomic_store_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Store value to atomic uint32 variable. More... | |
| uint32_t | odp_atomic_fetch_add_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Fetch and add to atomic uint32 variable. More... | |
| void | odp_atomic_add_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Add to atomic uint32 variable. More... | |
| uint32_t | odp_atomic_fetch_sub_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Fetch and subtract from atomic uint32 variable. More... | |
| void | odp_atomic_sub_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Subtract from atomic uint32 variable. More... | |
| uint32_t | odp_atomic_fetch_inc_u32 (odp_atomic_u32_t *atom) |
| Fetch and increment atomic uint32 variable. More... | |
| void | odp_atomic_inc_u32 (odp_atomic_u32_t *atom) |
| Increment atomic uint32 variable. More... | |
| uint32_t | odp_atomic_fetch_dec_u32 (odp_atomic_u32_t *atom) |
| Fetch and decrement atomic uint32 variable. More... | |
| void | odp_atomic_dec_u32 (odp_atomic_u32_t *atom) |
| Decrement atomic uint32 variable. More... | |
| void | odp_atomic_max_u32 (odp_atomic_u32_t *atom, uint32_t new_max) |
| Update maximum value of atomic uint32 variable. More... | |
| uint32_t | odp_atomic_fetch_max_u32 (odp_atomic_u32_t *atom, uint32_t new_max) |
| Fetch and update maximum value of atomic uint32 variable. More... | |
| void | odp_atomic_min_u32 (odp_atomic_u32_t *atom, uint32_t new_min) |
| Update minimum value of atomic uint32 variable. More... | |
| uint32_t | odp_atomic_fetch_min_u32 (odp_atomic_u32_t *atom, uint32_t new_min) |
| Fetch and update minimum value of atomic uint32 variable. More... | |
| int | odp_atomic_cas_u32 (odp_atomic_u32_t *atom, uint32_t *old_val, uint32_t new_val) |
| Compare and swap atomic uint32 variable. More... | |
| uint32_t | odp_atomic_xchg_u32 (odp_atomic_u32_t *atom, uint32_t new_val) |
| Exchange value of atomic uint32 variable. More... | |
| void | odp_atomic_bit_set_u32 (odp_atomic_u32_t *atom, uint32_t bits) |
| Set bits in atomic uint32 variable. More... | |
| uint32_t | odp_atomic_bit_fetch_set_u32 (odp_atomic_u32_t *atom, uint32_t bits) |
| Fetch value and set bits in atomic uint32 variable. More... | |
| void | odp_atomic_bit_clr_u32 (odp_atomic_u32_t *atom, uint32_t bits) |
| Clear bits in atomic uint32 variable. More... | |
| uint32_t | odp_atomic_bit_fetch_clr_u32 (odp_atomic_u32_t *atom, uint32_t bits) |
| Fetch value and clear bits in atomic uint32 variable. More... | |
| void | odp_atomic_init_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Initialize atomic uint64 variable. More... | |
| uint64_t | odp_atomic_load_u64 (odp_atomic_u64_t *atom) |
| Load value of atomic uint64 variable. More... | |
| void | odp_atomic_store_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Store value to atomic uint64 variable. More... | |
| uint64_t | odp_atomic_fetch_add_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Fetch and add to atomic uint64 variable. More... | |
| void | odp_atomic_add_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Add to atomic uint64 variable. More... | |
| uint64_t | odp_atomic_fetch_sub_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Fetch and subtract from atomic uint64 variable. More... | |
| void | odp_atomic_sub_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Subtract from atomic uint64 variable. More... | |
| uint64_t | odp_atomic_fetch_inc_u64 (odp_atomic_u64_t *atom) |
| Fetch and increment atomic uint64 variable. More... | |
| void | odp_atomic_inc_u64 (odp_atomic_u64_t *atom) |
| Increment atomic uint64 variable. More... | |
| uint64_t | odp_atomic_fetch_dec_u64 (odp_atomic_u64_t *atom) |
| Fetch and decrement atomic uint64 variable. More... | |
| void | odp_atomic_dec_u64 (odp_atomic_u64_t *atom) |
| Decrement atomic uint64 variable. More... | |
| void | odp_atomic_max_u64 (odp_atomic_u64_t *atom, uint64_t new_max) |
| Update maximum value of atomic uint64 variable. More... | |
| uint64_t | odp_atomic_fetch_max_u64 (odp_atomic_u64_t *atom, uint64_t new_max) |
| Fetch and update maximum value of atomic uint64 variable. More... | |
| void | odp_atomic_min_u64 (odp_atomic_u64_t *atom, uint64_t new_min) |
| Update minimum value of atomic uint64 variable. More... | |
| uint64_t | odp_atomic_fetch_min_u64 (odp_atomic_u64_t *atom, uint64_t new_min) |
| Fetch and update minimum value of atomic uint64_t variable. More... | |
| int | odp_atomic_cas_u64 (odp_atomic_u64_t *atom, uint64_t *old_val, uint64_t new_val) |
| Compare and swap atomic uint64 variable. More... | |
| uint64_t | odp_atomic_xchg_u64 (odp_atomic_u64_t *atom, uint64_t new_val) |
| Exchange value of atomic uint64 variable. More... | |
| void | odp_atomic_bit_set_u64 (odp_atomic_u64_t *atom, uint64_t bits) |
| Set bits in atomic uint64 variable. More... | |
| uint64_t | odp_atomic_bit_fetch_set_u64 (odp_atomic_u64_t *atom, uint64_t bits) |
| Fetch value and set bits in atomic uint64 variable. More... | |
| void | odp_atomic_bit_clr_u64 (odp_atomic_u64_t *atom, uint64_t bits) |
| Clear bits in atomic uint64 variable. More... | |
| uint64_t | odp_atomic_bit_fetch_clr_u64 (odp_atomic_u64_t *atom, uint64_t bits) |
| Fetch value and clear bits in atomic uint64 variable. More... | |
| void | odp_atomic_init_u128 (odp_atomic_u128_t *atom, odp_u128_t val) |
| Initialize atomic odp_u128_t variable. More... | |
| odp_u128_t | odp_atomic_load_u128 (odp_atomic_u128_t *atom) |
| Load value of atomic odp_u128_t variable. More... | |
| void | odp_atomic_store_u128 (odp_atomic_u128_t *atom, odp_u128_t val) |
| Store value to atomic odp_u128_t variable. More... | |
| int | odp_atomic_cas_u128 (odp_atomic_u128_t *atom, odp_u128_t *old_val, odp_u128_t new_val) |
| Compare and swap atomic odp_u128_t variable. More... | |
| uint32_t | odp_atomic_load_acq_u32 (odp_atomic_u32_t *atom) |
| Load value of atomic uint32 variable using ACQUIRE memory ordering. More... | |
| void | odp_atomic_store_rel_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Store value to atomic uint32 variable using RELEASE memory ordering. More... | |
| void | odp_atomic_add_rel_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Add to atomic uint32 variable using RELEASE memory ordering. More... | |
| void | odp_atomic_sub_rel_u32 (odp_atomic_u32_t *atom, uint32_t val) |
| Subtract from atomic uint32 variable using RELEASE memory ordering. More... | |
| int | odp_atomic_cas_acq_u32 (odp_atomic_u32_t *atom, uint32_t *old_val, uint32_t new_val) |
| Compare and swap atomic uint32 variable using ACQUIRE memory ordering. More... | |
| int | odp_atomic_cas_rel_u32 (odp_atomic_u32_t *atom, uint32_t *old_val, uint32_t new_val) |
| Compare and swap atomic uint32 variable using RELEASE memory ordering. More... | |
| int | odp_atomic_cas_acq_rel_u32 (odp_atomic_u32_t *atom, uint32_t *old_val, uint32_t new_val) |
| Compare and swap atomic uint32 variable using ACQUIRE-and-RELEASE memory ordering. More... | |
| void | odp_atomic_bit_set_rel_u32 (odp_atomic_u32_t *atom, uint32_t bits) |
| Set bits in atomic uint32 variable using RELEASE memory ordering. More... | |
| void | odp_atomic_bit_clr_rel_u32 (odp_atomic_u32_t *atom, uint32_t bits) |
| Clear bits in atomic uint32 variable using RELEASE memory ordering. More... | |
| uint64_t | odp_atomic_load_acq_u64 (odp_atomic_u64_t *atom) |
| Load value of atomic uint64 variable using ACQUIRE memory ordering. More... | |
| void | odp_atomic_store_rel_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Store value to atomic uint64 variable using RELEASE memory ordering. More... | |
| void | odp_atomic_add_rel_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Add to atomic uint64 variable using RELEASE memory ordering. More... | |
| void | odp_atomic_sub_rel_u64 (odp_atomic_u64_t *atom, uint64_t val) |
| Subtract from atomic uint64 variable using RELEASE memory ordering. More... | |
| int | odp_atomic_cas_acq_u64 (odp_atomic_u64_t *atom, uint64_t *old_val, uint64_t new_val) |
| Compare and swap atomic uint64 variable using ACQUIRE memory ordering. More... | |
| int | odp_atomic_cas_rel_u64 (odp_atomic_u64_t *atom, uint64_t *old_val, uint64_t new_val) |
| Compare and swap atomic uint64 variable using RELEASE memory ordering. More... | |
| int | odp_atomic_cas_acq_rel_u64 (odp_atomic_u64_t *atom, uint64_t *old_val, uint64_t new_val) |
| Compare and swap atomic uint64 variable using ACQUIRE-and-RELEASE memory ordering. More... | |
| void | odp_atomic_bit_set_rel_u64 (odp_atomic_u64_t *atom, uint64_t bits) |
| Set bits in atomic uint64 variable using RELEASE memory ordering. More... | |
| void | odp_atomic_bit_clr_rel_u64 (odp_atomic_u64_t *atom, uint64_t bits) |
| Clear bits in atomic uint64 variable using RELEASE memory ordering. More... | |
| int | odp_atomic_lock_free_u64 (odp_atomic_op_t *atomic_op) |
| Query which atomic uint64 operations are lock-free. More... | |
| int | odp_atomic_cas_acq_u128 (odp_atomic_u128_t *atom, odp_u128_t *old_val, odp_u128_t new_val) |
| Compare and swap atomic odp_u128_t variable using ACQUIRE memory ordering. More... | |
| int | odp_atomic_cas_rel_u128 (odp_atomic_u128_t *atom, odp_u128_t *old_val, odp_u128_t new_val) |
| Compare and swap atomic odp_u128_t variable using RELEASE memory ordering. More... | |
| int | odp_atomic_cas_acq_rel_u128 (odp_atomic_u128_t *atom, odp_u128_t *old_val, odp_u128_t new_val) |
| Compare and swap atomic odp_u128_t variable using ACQUIRE-and-RELEASE memory ordering. More... | |
| int | odp_atomic_lock_free_u128 (odp_atomic_op_t *atomic_op) |
| Query which atomic odp_atomic_u128_t operations are lock-free. More... | |
ODP atomic operations.
Definition in file api/spec/atomic.h.