[+] MSVC: inline auline AuUInt8 AuAtomicUtils<AuUInt8>::CompareExchange(AuUInt8 *in, AuUInt8 replace, AuUInt8 compare)

[+] MSVC: inline auline AuInt8 AuAtomicUtils<AuInt8>::CompareExchange(AuInt8 *in, AuInt8 replace, AuInt8 compare)
This commit is contained in:
Reece Wilson 2023-09-10 18:14:55 +01:00
parent 6be98f9d28
commit 23fbd26c7f

View File

@ -160,6 +160,12 @@ inline auline AuUInt16 AuAtomicUtils<AuUInt16>::CompareExchange(AuUInt16 *in, Au
return static_cast<AuUInt16>(_InterlockedCompareExchange16(reinterpret_cast<short volatile *>(in), static_cast<short>(replace), static_cast<short>(compare)));
}
template <>
inline auline AuUInt8 AuAtomicUtils<AuUInt8>::CompareExchange(AuUInt8 *in, AuUInt8 replace, AuUInt8 compare)
{
return static_cast<AuUInt8>(_InterlockedCompareExchange8(reinterpret_cast<char volatile *>(in), static_cast<char>(replace), static_cast<char>(compare)));
}
template <>
inline auline AuInt64 AuAtomicUtils<AuInt64>::CompareExchange(AuInt64 *in, AuInt64 replace, AuInt64 compare)
{
@ -178,6 +184,12 @@ inline auline AuInt16 AuAtomicUtils<AuInt16>::CompareExchange(AuInt16 *in, AuInt
return _InterlockedCompareExchange16(reinterpret_cast<short volatile *>(in), static_cast<short>(replace), static_cast<short>(compare));
}
template <>
inline auline AuInt8 AuAtomicUtils<AuInt8>::CompareExchange(AuInt8 *in, AuInt8 replace, AuInt8 compare)
{
return _InterlockedCompareExchange8(reinterpret_cast<char volatile *>(in), static_cast<char>(replace), static_cast<char>(compare));
}
#if !defined(AURORA_IS_32BIT)
template <>
inline auline AuUInt64 AuAtomicUtils<AuUInt64>::Add(AuUInt64 *in, AuUInt64 addend)