atomic Reference
File
lib/system/include/system/atomic.h
 
Date
Wednesday, June 25, 2014
 
 
Tasks
System_Atomic_Add32
int32_t System_Atomic_Add32(
    int32_t amount,
    volatile int32_t *value );  
 
System_Atomic_Add64
int64_t System_Atomic_Add64(
    int64_t amount,
    volatile int64_t *value );  
 
System_Atomic_And32
int32_t System_Atomic_And32(
    uint32_t mask,
    volatile uint32_t *value );  
 
System_Atomic_CompareAndSwap16
bool System_Atomic_CompareAndSwap16(
    int16_t oldValue,
    int16_t newValue,
    volatile int16_t *value );  
 
System_Atomic_CompareAndSwap32
bool System_Atomic_CompareAndSwap32(
    int32_t oldValue,
    int32_t newValue,
    volatile int32_t *value );  
 
System_Atomic_CompareAndSwap64
bool System_Atomic_CompareAndSwap64(
    int64_t oldValue,
    int64_t newValue,
    volatile int64_t *value );  
 
System_Atomic_CompareAndSwap8
bool System_Atomic_CompareAndSwap8(
    int8_t oldValue,
    int8_t newValue,
    volatile int8_t *value );  
 
System_Atomic_CompareAndSwapChar
bool System_Atomic_CompareAndSwapChar(
    char oldValue,
    char newValue,
    volatile char *value );  
 
System_Atomic_CompareAndSwapInt
bool System_Atomic_CompareAndSwapInt(
    int oldValue,
    int newValue,
    volatile int *value );  
 
System_Atomic_CompareAndSwapLong
bool System_Atomic_CompareAndSwapLong(
    long oldValue,
    long newValue,
    volatile long *value );  
 
System_Atomic_CompareAndSwapPtr
bool System_Atomic_CompareAndSwapPtr(
    void *oldValue,
    void *newValue,
    void *volatile * value );  
 
System_Atomic_CompareAndSwapShort
bool System_Atomic_CompareAndSwapShort(
    short oldValue,
    short newValue,
    volatile short *value );  
 
System_Atomic_Decrement32
int32_t System_Atomic_Decrement32(
    volatile int32_t *value );  
 
System_Atomic_Decrement64
int64_t System_Atomic_Decrement64(
    volatile int64_t *value );  
 
System_Atomic_Increment32
int32_t System_Atomic_Increment32(
    volatile int32_t *value );  
 
System_Atomic_Increment64
int64_t System_Atomic_Increment64(
    volatile int64_t *value );  
 
System_Atomic_MemoryBarrier
void System_Atomic_MemoryBarrier(
    void );  
 
System_Atomic_Or32
int32_t System_Atomic_Or32(
    uint32_t mask,
    volatile uint32_t *value );  
 
System_Atomic_SpinLockLock
void System_Atomic_SpinLockLock(
    System_Atomic_SpinLock *lock );  
 
System_Atomic_SpinLockTry
bool System_Atomic_SpinLockTry(
    System_Atomic_SpinLock *lock );  
 
System_Atomic_SpinLockUnlock
void System_Atomic_SpinLockUnlock(
    System_Atomic_SpinLock *lock );  
 
System_Atomic_TestAndClear
bool System_Atomic_TestAndClear(
    uint32_t n,
    volatile void *address );  
 
System_Atomic_TestAndSet
bool System_Atomic_TestAndSet(
    uint32_t n,
    volatile void *address );  
 
System_Atomic_Xor32
int32_t System_Atomic_Xor32(
    uint32_t mask,
    volatile uint32_t *value );  
 
Types
System_Atomic_SpinLock
 typedef int32_t System_Atomic_SpinLock;  
 
Macros
__XEOS_LIB_SYSTEM_ATOMIC_H__
#define __XEOS_LIB_SYSTEM_ATOMIC_H__