TianoCore EDK2 master
Loading...
Searching...
No Matches
Synchronization.c
Go to the documentation of this file.
1
28UINT16
29EFIAPI
31 IN volatile UINT16 *Value,
32 IN UINT16 CompareValue,
33 IN UINT16 ExchangeValue
34 )
35{
36 return *Value != CompareValue ? *Value :
37 ((*Value = ExchangeValue), CompareValue);
38}
39
59UINT32
60EFIAPI
62 IN volatile UINT32 *Value,
63 IN UINT32 CompareValue,
64 IN UINT32 ExchangeValue
65 )
66{
67 return *Value != CompareValue ? *Value :
68 ((*Value = ExchangeValue), CompareValue);
69}
70
87UINT64
88EFIAPI
90 IN volatile UINT64 *Value,
91 IN UINT64 CompareValue,
92 IN UINT64 ExchangeValue
93 )
94{
95 return *Value != CompareValue ? *Value :
96 ((*Value = ExchangeValue), CompareValue);
97}
98
112UINT32
113EFIAPI
115 IN volatile UINT32 *Value
116 )
117{
118 return ++*Value;
119}
120
134UINT32
135EFIAPI
137 IN volatile UINT32 *Value
138 )
139{
140 return --*Value;
141}
UINT32 EFIAPI InternalSyncDecrement(IN volatile UINT32 *Value)
UINT32 EFIAPI InternalSyncIncrement(IN volatile UINT32 *Value)
UINT64 EFIAPI InternalSyncCompareExchange64(IN volatile UINT64 *Value, IN UINT64 CompareValue, IN UINT64 ExchangeValue)
UINT32 EFIAPI InternalSyncCompareExchange32(IN volatile UINT32 *Value, IN UINT32 CompareValue, IN UINT32 ExchangeValue)
UINT16 EFIAPI InternalSyncCompareExchange16(IN volatile UINT16 *Value, IN UINT16 CompareValue, IN UINT16 ExchangeValue)
#define IN
Definition: Base.h:279