Zycore
1.2.0.0
|
Go to the source code of this file.
Classes | |
struct | ZyanAtomic32_ |
struct | ZyanAtomic64_ |
struct | ZyanAtomicPointer_ |
Macros | |
#define | ZYAN_ATOMIC_COMPARE_EXCHANGE(destination, comparand, value) ZyanAtomicCompareExchange((ZyanAtomicPointer*)&(destination), (comparand), (value)) |
#define | ZYAN_ATOMIC_INCREMENT(destination) ZyanAtomicIncrement((ZyanAtomicPointer*)&(destination)); |
#define | ZYAN_ATOMIC_DECREMENT(destination) ZyanAtomicDecrement((ZyanAtomicPointer*)&(destination)); |
#define | ZYAN_ATOMIC_COMPARE_EXCHANGE32(destination, comparand, value) ZyanAtomicCompareExchange32((ZyanAtomic32*)&(destination), (comparand), (value)) |
#define | ZYAN_ATOMIC_INCREMENT32(destination) ZyanAtomicIncrement32((ZyanAtomic32*)&(destination)); |
#define | ZYAN_ATOMIC_DECREMENT32(destination) ZyanAtomicDecrement32((ZyanAtomic32*)&(destination)); |
#define | ZYAN_ATOMIC_COMPARE_EXCHANGE64(destination, comparand, value) ZyanAtomicCompareExchange64((ZyanAtomic64*)&(destination), (comparand), (value)) |
#define | ZYAN_ATOMIC_INCREMENT64(destination) ZyanAtomicIncrement64((ZyanAtomic64*)&(destination)); |
#define | ZYAN_ATOMIC_DECREMENT64(destination) ZyanAtomicDecrement64((ZyanAtomic64*)&(destination)); |
Typedefs | |
typedef struct ZyanAtomic32_ | ZyanAtomic32 |
typedef struct ZyanAtomic64_ | ZyanAtomic64 |
typedef struct ZyanAtomicPointer_ | ZyanAtomicPointer |
Cross compiler atomic intrinsics.
#define ZYAN_ATOMIC_COMPARE_EXCHANGE | ( | destination, | |
comparand, | |||
value | |||
) | ZyanAtomicCompareExchange((ZyanAtomicPointer*)&(destination), (comparand), (value)) |
#define ZYAN_ATOMIC_COMPARE_EXCHANGE32 | ( | destination, | |
comparand, | |||
value | |||
) | ZyanAtomicCompareExchange32((ZyanAtomic32*)&(destination), (comparand), (value)) |
#define ZYAN_ATOMIC_COMPARE_EXCHANGE64 | ( | destination, | |
comparand, | |||
value | |||
) | ZyanAtomicCompareExchange64((ZyanAtomic64*)&(destination), (comparand), (value)) |
#define ZYAN_ATOMIC_DECREMENT | ( | destination | ) | ZyanAtomicDecrement((ZyanAtomicPointer*)&(destination)); |
#define ZYAN_ATOMIC_DECREMENT32 | ( | destination | ) | ZyanAtomicDecrement32((ZyanAtomic32*)&(destination)); |
#define ZYAN_ATOMIC_DECREMENT64 | ( | destination | ) | ZyanAtomicDecrement64((ZyanAtomic64*)&(destination)); |
#define ZYAN_ATOMIC_INCREMENT | ( | destination | ) | ZyanAtomicIncrement((ZyanAtomicPointer*)&(destination)); |
#define ZYAN_ATOMIC_INCREMENT32 | ( | destination | ) | ZyanAtomicIncrement32((ZyanAtomic32*)&(destination)); |
#define ZYAN_ATOMIC_INCREMENT64 | ( | destination | ) | ZyanAtomicIncrement64((ZyanAtomic64*)&(destination)); |