WPILibC++ 2027.0.0-alpha-3
Loading...
Searching...
No Matches
atomic.h File Reference
#include "upb/port/def.inc"
#include <string.h>
#include "upb/port/undef.inc"

Go to the source code of this file.

Macros

#define upb_Atomic_Init(addr, val)
 
#define upb_Atomic_Load(addr, order)
 
#define upb_Atomic_Store(addr, val, order)
 
#define upb_Atomic_Exchange(addr, val, order)
 
#define upb_Atomic_CompareExchangeStrong(addr, expected, desired, success_order, failure_order)
 
#define upb_Atomic_CompareExchangeWeak(addr, expected, desired, success_order, failure_order)
 

Functions

UPB_INLINE void * _upb_NonAtomic_Exchange (void *addr, void *value)
 
UPB_INLINE bool _upb_NonAtomic_CompareExchangeStrongP (void *addr, void *expected, void *desired)
 

Macro Definition Documentation

◆ upb_Atomic_CompareExchangeStrong

#define upb_Atomic_CompareExchangeStrong ( addr,
expected,
desired,
success_order,
failure_order )
Value:
_upb_NonAtomic_CompareExchangeStrongP((void*)addr, (void*)expected, \
(void*)desired)
UPB_INLINE bool _upb_NonAtomic_CompareExchangeStrongP(void *addr, void *expected, void *desired)
Definition atomic.h:186

◆ upb_Atomic_CompareExchangeWeak

#define upb_Atomic_CompareExchangeWeak ( addr,
expected,
desired,
success_order,
failure_order )
Value:
upb_Atomic_CompareExchangeStrong(addr, expected, desired, 0, 0)
#define upb_Atomic_CompareExchangeStrong(addr, expected, desired, success_order, failure_order)
Definition atomic.h:198

◆ upb_Atomic_Exchange

#define upb_Atomic_Exchange ( addr,
val,
order )
Value:
UPB_INLINE void * _upb_NonAtomic_Exchange(void *addr, void *value)
Definition atomic.h:176

◆ upb_Atomic_Init

#define upb_Atomic_Init ( addr,
val )
Value:
(*addr = val)

◆ upb_Atomic_Load

#define upb_Atomic_Load ( addr,
order )
Value:
(*addr)

◆ upb_Atomic_Store

#define upb_Atomic_Store ( addr,
val,
order )
Value:
(*(addr) = val)

Function Documentation

◆ _upb_NonAtomic_CompareExchangeStrongP()

UPB_INLINE bool _upb_NonAtomic_CompareExchangeStrongP ( void * addr,
void * expected,
void * desired )

◆ _upb_NonAtomic_Exchange()

UPB_INLINE void * _upb_NonAtomic_Exchange ( void * addr,
void * value )