#include <windows.h>
#include <intrin.h>
Go to the source code of this file.
Defines | |
#define | ORO_ATOMIC_CLEANUP(a_int) |
#define | oro_atomic_read(a_int) (*(a_int)) |
#define | oro_atomic_set(a_int, n) (*(a_int) = (n)) |
#define | ORO_ATOMIC_SETUP oro_atomic_set |
Typedefs | |
typedef volatile long | oro_atomic_t |
Functions | |
static __forceinline void | oro_atomic_add (oro_atomic_t *a_int, int n) |
static __forceinline int | oro_atomic_add_negative (oro_atomic_t *a_int, int n) |
static __forceinline int | oro_atomic_add_return (oro_atomic_t *a_int, int n) |
static __forceinline int | oro_atomic_clear_mask (oro_atomic_t *a_int, int mask) |
static __forceinline void | oro_atomic_dec (oro_atomic_t *a_int) |
static __forceinline int | oro_atomic_dec_and_test (oro_atomic_t *a_int) |
static __forceinline int | oro_atomic_dec_return (oro_atomic_t *a_int) |
static __forceinline void | oro_atomic_inc (oro_atomic_t *a_int) |
static __forceinline int | oro_atomic_inc_and_test (oro_atomic_t *a_int) |
static __forceinline int | oro_atomic_inc_return (oro_atomic_t *a_int) |
static __forceinline int | oro_atomic_set_mask (oro_atomic_t *a_int, int mask) |
static __forceinline void | oro_atomic_sub (oro_atomic_t *a_int, int n) |
static __forceinline int | oro_atomic_sub_and_test (oro_atomic_t *a_int, int n) |
static __forceinline int | oro_atomic_sub_return (oro_atomic_t *a_int, int n) |
template<typename T > | |
T | oro_cmpxchg (volatile void *ptr, T old, T _new) |
#define ORO_ATOMIC_CLEANUP | ( | a_int | ) |
Definition at line 12 of file oro_msvc/oro_arch.h.
#define oro_atomic_read | ( | a_int | ) | (*(a_int)) |
Definition at line 14 of file oro_msvc/oro_arch.h.
#define oro_atomic_set | ( | a_int, | |
n | |||
) | (*(a_int) = (n)) |
Definition at line 16 of file oro_msvc/oro_arch.h.
#define ORO_ATOMIC_SETUP oro_atomic_set |
Definition at line 11 of file oro_msvc/oro_arch.h.
typedef volatile long oro_atomic_t |
Definition at line 9 of file oro_msvc/oro_arch.h.
static __forceinline void oro_atomic_add | ( | oro_atomic_t * | a_int, |
int | n | ||
) | [static] |
Definition at line 18 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_add_negative | ( | oro_atomic_t * | a_int, |
int | n | ||
) | [static] |
Definition at line 53 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_add_return | ( | oro_atomic_t * | a_int, |
int | n | ||
) | [static] |
Definition at line 58 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_clear_mask | ( | oro_atomic_t * | a_int, |
int | mask | ||
) | [static] |
Definition at line 78 of file oro_msvc/oro_arch.h.
static __forceinline void oro_atomic_dec | ( | oro_atomic_t * | a_int | ) | [static] |
Definition at line 38 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_dec_and_test | ( | oro_atomic_t * | a_int | ) | [static] |
Definition at line 43 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_dec_return | ( | oro_atomic_t * | a_int | ) | [static] |
Definition at line 73 of file oro_msvc/oro_arch.h.
static __forceinline void oro_atomic_inc | ( | oro_atomic_t * | a_int | ) | [static] |
Definition at line 33 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_inc_and_test | ( | oro_atomic_t * | a_int | ) | [static] |
Definition at line 48 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_inc_return | ( | oro_atomic_t * | a_int | ) | [static] |
Definition at line 68 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_set_mask | ( | oro_atomic_t * | a_int, |
int | mask | ||
) | [static] |
Definition at line 83 of file oro_msvc/oro_arch.h.
static __forceinline void oro_atomic_sub | ( | oro_atomic_t * | a_int, |
int | n | ||
) | [static] |
Definition at line 23 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_sub_and_test | ( | oro_atomic_t * | a_int, |
int | n | ||
) | [static] |
Definition at line 28 of file oro_msvc/oro_arch.h.
static __forceinline int oro_atomic_sub_return | ( | oro_atomic_t * | a_int, |
int | n | ||
) | [static] |
Definition at line 63 of file oro_msvc/oro_arch.h.
T oro_cmpxchg | ( | volatile void * | ptr, |
T | old, | ||
T | _new | ||
) | [inline] |
Definition at line 91 of file oro_msvc/oro_arch.h.