|
| #define | ATOMIC_FLAG_INIT 0 |
| #define | ATOMIC_VAR_INIT(VAL) |
| #define | atomic_flag_test_and_set(FLAG) |
| #define | atomic_flag_test_and_set_explicit(FLAG, MO) |
| #define | atomic_flag_clear(FLAG) |
| #define | atomic_flag_clear_explicit(FLAG, MO) |
| #define | atomic_init(OBJ, VAL) |
| #define | atomic_is_lock_free(OBJ) |
| #define | atomic_store(OBJ, VAL) |
| #define | atomic_store_explicit(OBJ, VAL, MO) |
| #define | atomic_load(OBJ) |
| #define | atomic_load_explicit(OBJ, MO) |
| #define | atomic_exchange(OBJ, DES) |
| #define | atomic_exchange_explicit(OBJ, DES, MO) |
| #define | atomic_compare_exchange_strong(OBJ, EXP, DES) |
| #define | atomic_compare_exchange_strong_explicit(OBJ, EXP, DES, MO) |
| #define | atomic_compare_exchange_weak(OBJ, EXP, DES) |
| #define | atomic_compare_exchange_weak_explicit(OBJ, EXP, DES, MO) |
| #define | atomic_fetch_add(OBJ, VAL) |
| #define | atomic_fetch_add_explicit(OBJ, VAL, MO) |
| #define | atomic_fetch_sub(OBJ, VAL) |
| #define | atomic_fetch_sub_explicit(OBJ, VAL, MO) |
| #define | atomic_fetch_or(OBJ, VAL) |
| #define | atomic_fetch_or_explicit(OBJ, VAL, MO) |
| #define | atomic_fetch_xor(OBJ, VAL) |
| #define | atomic_fetch_xor_explicit(OBJ, VAL, MO) |
| #define | atomic_fetch_and(OBJ, VAL) |
| #define | atomic_fetch_and_explicit(OBJ, VAL, MO) |
| #define | atomic_thread_fence(MO) |
| #define | atomic_signal_fence(MO) |
GCC specific atomic primitives for libmetal.