18 inc(TVOLATILE AtomicAdjustDummyImpl::Integer &var) {
27 dec(TVOLATILE AtomicAdjustDummyImpl::Integer &var) {
36 add(TVOLATILE AtomicAdjustDummyImpl::Integer &var, AtomicAdjustDummyImpl::Integer delta) {
37 Integer new_value = var + delta;
46 set(TVOLATILE AtomicAdjustDummyImpl::Integer &var, AtomicAdjustDummyImpl::Integer new_value) {
47 Integer orig_value = var;
59 get(
const TVOLATILE AtomicAdjustDummyImpl::Integer &var) {
67 set_ptr(TVOLATILE AtomicAdjustDummyImpl::Pointer &var,
68 AtomicAdjustDummyImpl::Pointer new_value) {
69 Pointer orig_value = var;
81 get_ptr(
const TVOLATILE AtomicAdjustDummyImpl::Pointer &var) {
94 AtomicAdjustDummyImpl::Integer old_value,
95 AtomicAdjustDummyImpl::Integer new_value) {
96 Integer orig_value = mem;
97 if (mem == old_value) {
110 AtomicAdjustDummyImpl::Pointer old_value,
111 AtomicAdjustDummyImpl::Pointer new_value) {
112 Pointer orig_value = mem;
113 if (mem == old_value) {
static Pointer get_ptr(const Pointer &var)
Atomically retrieves the snapshot value of the indicated variable.
static Integer add(Integer &var, Integer delta)
Atomically computes var += delta.
static void inc(Integer &var)
Atomically increments the indicated variable.
static bool dec(Integer &var)
Atomically decrements the indicated variable and returns true if the new value is nonzero,...
static Integer get(const Integer &var)
Atomically retrieves the snapshot value of the indicated variable.
static Pointer set_ptr(Pointer &var, Pointer new_value)
Atomically changes the indicated variable and returns the original value.
static Integer set(Integer &var, Integer new_value)
Atomically changes the indicated variable and returns the original value.
static Pointer compare_and_exchange_ptr(Pointer &mem, Pointer old_value, Pointer new_value)
Atomic compare and exchange.
static Integer compare_and_exchange(Integer &mem, Integer old_value, Integer new_value)
Atomic compare and exchange.