#include "../lock_ops.h"Go to the source code of this file.
Defines | |
| #define | MEMBAR_USES_LOCK |
| #define | _membar_lock lock_get(__membar_lock) |
| #define | _membar_unlock lock_release(__membar_lock) |
| #define | membar() |
| #define | membar_write() membar() |
| #define | membar_read() membar() |
| #define | membar_depends() do {} while(0) |
| #define | membar_enter_lock() do {} while(0) |
| #define | membar_leave_lock() do {} while(0) |
| #define | membar_atomic_op() membar() |
| #define | membar_atomic_setget() membar() |
| #define | membar_write_atomic_op() membar_write() |
| #define | membar_write_atomic_setget() membar_write() |
| #define | membar_read_atomic_op() membar_read() |
| #define | membar_read_atomic_setget() membar_read() |
| #define | atomic_lock(v) lock_get(_atomic_lock) |
| #define | atomic_unlock(v) lock_release(_atomic_lock) |
| #define | ATOMIC_FUNC_DECL(NAME, OP, P_TYPE, RET_TYPE, RET_EXPR) |
| #define | ATOMIC_FUNC_DECL1(NAME, OP, P_TYPE, RET_TYPE, RET_EXPR) |
| #define | ATOMIC_FUNC_DECL_RET(NAME, OP, P_TYPE, RET_TYPE, RET_EXPR) |
| #define | ATOMIC_FUNC_DECL1_RET(NAME, OP, P_TYPE, RET_TYPE, RET_EXPR) |
| #define | ATOMIC_FUNC_DECL2_RET(NAME, OP, P_TYPE, RET_TYPE, RET_EXPR) |
| #define | atomic_inc(var) atomic_inc_int(&(var)->val) |
| #define | atomic_dec(var) atomic_dec_int(&(var)->val) |
| #define | atomic_and(var, mask) atomic_and_int(&(var)->val, (mask)) |
| #define | atomic_or(var, mask) atomic_or_int(&(var)->val, (mask)) |
| #define | atomic_dec_and_test(var) atomic_dec_and_test_int(&(var)->val) |
| #define | atomic_inc_and_test(var) atomic_inc_and_test_int(&(var)->val) |
| #define | atomic_get_and_set(var, i) atomic_get_and_set_int(&(var)->val, i) |
| #define | atomic_cmpxchg(var, old, new_v) atomic_cmpxchg_int(&(var)->val, old, new_v) |
| #define | atomic_add(var, v) atomic_add_int(&(var)->val, v) |
| #define | mb_atomic_set_int(v, i) |
| #define | mb_atomic_set_long(v, i) |
| #define | mb_atomic_inc_int(v) atomic_inc_int(v) |
| #define | mb_atomic_dec_int(v) atomic_dec_int(v) |
| #define | mb_atomic_or_int(v, m) atomic_or_int(v, m) |
| #define | mb_atomic_and_int(v, m) atomic_and_int(v, m) |
| #define | mb_atomic_inc_and_test_int(v) atomic_inc_and_test_int(v) |
| #define | mb_atomic_dec_and_test_int(v) atomic_dec_and_test_int(v) |
| #define | mb_atomic_get_and_set_int(v, i) atomic_get_and_set_int(v, i) |
| #define | mb_atomic_cmpxchg_int(v, o, n) atomic_cmpxchg_int(v, o, n) |
| #define | mb_atomic_add_int(v, i) atomic_add_int(v, i) |
| #define | mb_atomic_inc_long(v) atomic_inc_long(v) |
| #define | mb_atomic_dec_long(v) atomic_dec_long(v) |
| #define | mb_atomic_or_long(v, m) atomic_or_long(v, m) |
| #define | mb_atomic_and_long(v, m) atomic_and_long(v, m) |
| #define | mb_atomic_inc_and_test_long(v) atomic_inc_and_test_long(v) |
| #define | mb_atomic_dec_and_test_long(v) atomic_dec_and_test_long(v) |
| #define | mb_atomic_get_and_set_long(v, i) atomic_get_and_set_long(v, i) |
| #define | mb_atomic_cmpxchg_long(v, o, n) atomic_cmpxchg_long(v, o, n) |
| #define | mb_atomic_add_long(v, i) atomic_add_long(v, i) |
| #define | mb_atomic_inc(var) mb_atomic_inc_int(&(var)->val) |
| #define | mb_atomic_dec(var) mb_atomic_dec_int(&(var)->val) |
| #define | mb_atomic_and(var, mask) mb_atomic_and_int(&(var)->val, (mask)) |
| #define | mb_atomic_or(var, mask) mb_atomic_or_int(&(var)->val, (mask)) |
| #define | mb_atomic_dec_and_test(var) mb_atomic_dec_and_test_int(&(var)->val) |
| #define | mb_atomic_inc_and_test(var) mb_atomic_inc_and_test_int(&(var)->val) |
| #define | mb_atomic_get_and_set(var, i) mb_atomic_get_and_set_int(&(var)->val, i) |
| #define | mb_atomic_cmpxchg(v, o, n) atomic_cmpxchg_int(&(v)->val, o, n) |
| #define | mb_atomic_add(v, i) atomic_add_int(&(v)->val, i) |
| #define | mb_atomic_get(var) mb_atomic_get_int(&(var)->val) |
| #define | mb_atomic_set(var, i) mb_atomic_set_int(&(var)->val, i) |
Functions | |
| ATOMIC_FUNC_DECL (inc,(*var)++, int, void,) ATOMIC_FUNC_DECL(dec | |
| ATOMIC_FUNC_DECL_RET (inc_and_test, ret=++(*var), int, int,(ret==0)) ATOMIC_FUNC_DECL_RET(dec_and_test | |
Variables | |
| gen_lock_t * | __membar_lock |
| gen_lock_t * | _atomic_lock |
| var | |
| int | |
| void | |
|
|
Definition at line 61 of file atomic_unknown.h. |
|
|
Definition at line 62 of file atomic_unknown.h. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Value: inline static RET_TYPE atomic_##NAME##_##P_TYPE (volatile P_TYPE *var) \ { \ atomic_lock(var); \ OP ; \ atomic_unlock(var); \ return RET_EXPR; \ } Definition at line 147 of file atomic_unknown.h. |
|
|
Value: inline static RET_TYPE atomic_##NAME##_##P_TYPE (volatile P_TYPE *var, \ P_TYPE v) \ { \ atomic_lock(var); \ OP ; \ atomic_unlock(var); \ return RET_EXPR; \ } Definition at line 159 of file atomic_unknown.h. |
|
|
Value: inline static RET_TYPE atomic_##NAME##_##P_TYPE (volatile P_TYPE *var, \ P_TYPE v) \ { \ P_TYPE ret; \ atomic_lock(var); \ OP ; \ atomic_unlock(var); \ return RET_EXPR; \ } Definition at line 182 of file atomic_unknown.h. |
|
|
Value: inline static RET_TYPE atomic_##NAME##_##P_TYPE (volatile P_TYPE *var, \ P_TYPE v1, P_TYPE v2)\ { \ P_TYPE ret; \ atomic_lock(var); \ OP ; \ atomic_unlock(var); \ return RET_EXPR; \ } Definition at line 194 of file atomic_unknown.h. |
|
|
Value: inline static RET_TYPE atomic_##NAME##_##P_TYPE (volatile P_TYPE *var) \ { \ P_TYPE ret; \ atomic_lock(var); \ OP ; \ atomic_unlock(var); \ return RET_EXPR; \ } Definition at line 171 of file atomic_unknown.h. |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 138 of file atomic_unknown.h. |
|
|
|
|
|
Definition at line 139 of file atomic_unknown.h. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Value: do{ \ membar(); \ atomic_set_int(v, i); \ }while(0) |
|
|
Value: do{ \ membar(); \ atomic_set_long(v, i); \ }while(0) |
|
|
Value: do{\ _membar_unlock; \ _membar_lock; \ } while(0) Definition at line 75 of file atomic_unknown.h. |
|
|
Definition at line 103 of file atomic_unknown.h. |
|
|
Definition at line 104 of file atomic_unknown.h. |
|
|
Definition at line 89 of file atomic_unknown.h. |
|
|
Definition at line 95 of file atomic_unknown.h. |
|
|
Definition at line 96 of file atomic_unknown.h. |
|
|
Definition at line 85 of file atomic_unknown.h. |
|
|
Definition at line 107 of file atomic_unknown.h. |
|
|
Definition at line 108 of file atomic_unknown.h. |
|
|
Definition at line 58 of file atomic_unknown.h. |
|
|
Definition at line 83 of file atomic_unknown.h. |
|
|
Definition at line 105 of file atomic_unknown.h. |
|
|
Definition at line 106 of file atomic_unknown.h. |
|
||||||||||||||||||||
|
|
|
||||||||||||||||||||||||
|
|
|
|
Definition at line 37 of file atomic_ops.c. Referenced by destroy_atomic_ops(), init_atomic_ops(), and main(). |
|
|
Definition at line 43 of file atomic_ops.c. Referenced by destroy_atomic_ops(), init_atomic_ops(), and main(). |
|
|
Definition at line 207 of file atomic_unknown.h. Referenced by cfg_lookup_token(). |
|
|
Definition at line 207 of file atomic_unknown.h. Referenced by cfg_declare_int(), cfg_declare_str(), cfg_fixup_selects(), cfg_get_by_name(), cfg_help(), cfg_lookup_var(), cfg_set_delayed(), cfg_set_now(), cfg_var_size(), new_cfg_script_var(), rpc_get(), rpc_help(), rpc_set_delayed_int(), rpc_set_delayed_string(), rpc_set_now_int(), rpc_set_now_string(), and select_cfg_var(). |
|
|
Definition at line 207 of file atomic_unknown.h. Referenced by print_rows(), and xode_stream_new(). |
1.3.9.1