CACAO
|
Data Structures | |
struct | CAS_32_functor |
struct | CAS_64_functor |
class | CAS_chooser |
class | CAS_chooser< 4 > |
class | CAS_chooser< 8 > |
class | CAS |
Functions | |
uint32_t | generic_compare_and_swap (volatile uint32_t *p, uint32_t oldval, uint32_t newval) |
A generic atomic compare and swap for 32-bit integer values. More... | |
uint64_t | generic_compare_and_swap (volatile uint64_t *p, uint64_t oldval, uint64_t newval) |
A generic atomic compare and swap for 64-bit integer values. More... | |
void * | generic_compare_and_swap (volatile void **p, void *oldval, void *newval) |
A generic atomic compare and swap for pointer values. More... | |
void | generic_memory_barrier (void) |
A generic memory barrier. More... | |
template<class T > | |
T | compare_and_swap (T *p, T o, T n) |
void | memory_barrier (void) |
void | write_memory_barrier (void) |
void | instruction_barrier (void) |
T Atomic::compare_and_swap | ( | T * | p, |
T | o, | ||
T | n | ||
) |
Definition at line 92 of file atomic.hpp.
uint32_t Atomic::generic_compare_and_swap | ( | volatile uint32_t * | p, |
uint32_t | oldval, | ||
uint32_t | newval | ||
) |
A generic atomic compare and swap for 32-bit integer values.
This function is using a mutex to provide atomicity.
p | Pointer to memory address. |
oldval | Old value to be expected. |
newval | New value to be stored. |
Definition at line 48 of file atomic.cpp.
uint64_t Atomic::generic_compare_and_swap | ( | volatile uint64_t * | p, |
uint64_t | oldval, | ||
uint64_t | newval | ||
) |
A generic atomic compare and swap for 64-bit integer values.
This function is using a mutex to provide atomicity.
p | Pointer to memory address. |
oldval | Old value to be expected. |
newval | New value to be stored. |
Definition at line 77 of file atomic.cpp.
A generic atomic compare and swap for pointer values.
This function is using a mutex to provide atomicity.
p | Pointer to memory address. |
oldval | Old value to be expected. |
newval | New value to be stored. |
Definition at line 106 of file atomic.cpp.
A generic memory barrier.
This function is using a mutex to provide atomicity.
Definition at line 129 of file atomic.cpp.
Definition at line 98 of file atomic.hpp.
Definition at line 96 of file atomic.hpp.
Definition at line 97 of file atomic.hpp.