wut  v1.5.0
Wii U Toolchain
Functions
Atomic Operations 64 bit

These functions are used for atomically operating on 64 bit values in memory. More...

Collaboration diagram for Atomic Operations 64 bit:

Functions

uint64_t OSGetAtomic64 (volatile uint64_t *ptr)
 
uint64_t OSSetAtomic64 (volatile uint64_t *ptr, uint64_t value)
 
BOOL OSCompareAndSwapAtomic64 (volatile uint64_t *ptr, uint64_t compare, uint64_t value)
 
BOOL OSCompareAndSwapAtomicEx64 (volatile uint64_t *ptr, uint64_t compare, uint64_t value, uint64_t *old)
 
uint64_t OSSwapAtomic64 (volatile uint64_t *ptr, uint64_t value)
 
int64_t OSAddAtomic64 (volatile int64_t *ptr, int64_t value)
 
uint64_t OSAndAtomic64 (volatile uint64_t *ptr, uint64_t value)
 
uint64_t OSOrAtomic64 (volatile uint64_t *ptr, uint64_t value)
 
uint64_t OSXorAtomic64 (volatile uint64_t *ptr, uint64_t value)
 
BOOL OSTestAndClearAtomic64 (volatile uint64_t *ptr, uint32_t bit)
 
BOOL OSTestAndSetAtomic64 (volatile uint64_t *ptr, uint32_t bit)
 

Detailed Description

These functions are used for atomically operating on 64 bit values in memory.

Function Documentation

◆ OSGetAtomic64()

uint64_t OSGetAtomic64 ( volatile uint64_t *  ptr)

◆ OSSetAtomic64()

uint64_t OSSetAtomic64 ( volatile uint64_t *  ptr,
uint64_t  value 
)

◆ OSCompareAndSwapAtomic64()

BOOL OSCompareAndSwapAtomic64 ( volatile uint64_t *  ptr,
uint64_t  compare,
uint64_t  value 
)

◆ OSCompareAndSwapAtomicEx64()

BOOL OSCompareAndSwapAtomicEx64 ( volatile uint64_t *  ptr,
uint64_t  compare,
uint64_t  value,
uint64_t *  old 
)

◆ OSSwapAtomic64()

uint64_t OSSwapAtomic64 ( volatile uint64_t *  ptr,
uint64_t  value 
)

◆ OSAddAtomic64()

int64_t OSAddAtomic64 ( volatile int64_t *  ptr,
int64_t  value 
)

◆ OSAndAtomic64()

uint64_t OSAndAtomic64 ( volatile uint64_t *  ptr,
uint64_t  value 
)

◆ OSOrAtomic64()

uint64_t OSOrAtomic64 ( volatile uint64_t *  ptr,
uint64_t  value 
)

◆ OSXorAtomic64()

uint64_t OSXorAtomic64 ( volatile uint64_t *  ptr,
uint64_t  value 
)

◆ OSTestAndClearAtomic64()

BOOL OSTestAndClearAtomic64 ( volatile uint64_t *  ptr,
uint32_t  bit 
)

◆ OSTestAndSetAtomic64()

BOOL OSTestAndSetAtomic64 ( volatile uint64_t *  ptr,
uint32_t  bit 
)