14AsmInternalSyncCompareExchange16 (
23AsmInternalSyncCompareExchange32 (
31AsmInternalSyncCompareExchange64 (
39AsmInternalSyncIncrement (
45AsmInternalSyncDecrement (
71 IN volatile UINT16 *Value,
72 IN UINT16 CompareValue,
73 IN UINT16 ExchangeValue
79 UINT64 LocalCompareValue;
80 UINT64 LocalExchangeValue;
81 volatile UINT32 *Ptr32;
84 ASSERT (!((UINT64)Value & (
sizeof (UINT16) - 1)));
87 Mask = (((~0UL) - (1UL << (0)) + 1) & (~0UL >> (64 - 1 - ((
sizeof (UINT16) * 8) - 1))));
88 LocalCompareValue = ((UINT64)CompareValue) & Mask;
89 LocalExchangeValue = ((UINT64)ExchangeValue) & Mask;
96 Shift = (UINT64)Value & 0x3;
98 LocalCompareValue <<= Shift;
99 LocalExchangeValue <<= Shift;
106 Ptr32 = (UINT32 *)((UINT64)Value & ~0x3);
108 RetValue = AsmInternalSyncCompareExchange16 (
115 return (RetValue & Mask) >> Shift;
140 IN volatile UINT32 *Value,
141 IN UINT32 CompareValue,
142 IN UINT32 ExchangeValue
147 RetValue = AsmInternalSyncCompareExchange32 (
175 IN volatile UINT64 *Value,
176 IN UINT64 CompareValue,
177 IN UINT64 ExchangeValue
182 RetValue = AsmInternalSyncCompareExchange64 (
207 IN volatile UINT32 *Value
210 return AsmInternalSyncIncrement (Value);
229 IN volatile UINT32 *Value
232 return AsmInternalSyncDecrement (Value);
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)