wut  v1.7.0
Wii U Toolchain
atomic64.h
Go to the documentation of this file.
1 #pragma once
2 #include <wut.h>
3 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 uint64_t
17 OSGetAtomic64(volatile uint64_t *ptr);
18 
19 uint64_t
20 OSSetAtomic64(volatile uint64_t *ptr,
21  uint64_t value);
22 
23 BOOL
24 OSCompareAndSwapAtomic64(volatile uint64_t *ptr,
25  uint64_t compare,
26  uint64_t value);
27 
28 BOOL
29 OSCompareAndSwapAtomicEx64(volatile uint64_t *ptr,
30  uint64_t compare,
31  uint64_t value,
32  uint64_t *old);
33 
34 uint64_t
35 OSSwapAtomic64(volatile uint64_t *ptr,
36  uint64_t value);
37 
38 int64_t
39 OSAddAtomic64(volatile int64_t *ptr,
40  int64_t value);
41 
42 uint64_t
43 OSAndAtomic64(volatile uint64_t *ptr,
44  uint64_t value);
45 
46 uint64_t
47 OSOrAtomic64(volatile uint64_t *ptr,
48  uint64_t value);
49 
50 uint64_t
51 OSXorAtomic64(volatile uint64_t *ptr,
52  uint64_t value);
53 
54 BOOL
55 OSTestAndClearAtomic64(volatile uint64_t *ptr,
56  uint32_t bit);
57 
58 BOOL
59 OSTestAndSetAtomic64(volatile uint64_t *ptr,
60  uint32_t bit);
61 
62 #ifdef __cplusplus
63 }
64 #endif
65 
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)
BOOL OSTestAndClearAtomic64(volatile uint64_t *ptr, uint32_t bit)
uint64_t OSXorAtomic64(volatile uint64_t *ptr, uint64_t value)
uint64_t OSGetAtomic64(volatile uint64_t *ptr)
uint64_t OSAndAtomic64(volatile uint64_t *ptr, uint64_t value)
BOOL OSTestAndSetAtomic64(volatile uint64_t *ptr, uint32_t bit)
uint64_t OSOrAtomic64(volatile uint64_t *ptr, uint64_t value)
uint64_t OSSwapAtomic64(volatile uint64_t *ptr, uint64_t value)
int64_t OSAddAtomic64(volatile int64_t *ptr, int64_t value)
uint64_t OSSetAtomic64(volatile uint64_t *ptr, uint64_t value)
int32_t BOOL
Definition: wut_types.h:7