#include "il2cpp-config.h" #include "vm/Atomic.h" #include "os/Atomic.h" namespace il2cpp { namespace vm { int32_t Atomic::Add(volatile int32_t* location1, int32_t value) { return os::Atomic::Add(location1, value); } #if IL2CPP_ENABLE_INTERLOCKED_64_REQUIRED_ALIGNMENT int64_t Atomic::Add64(volatile int64_t* location1, int64_t value) { return os::Atomic::Add64(location1, value); } #endif int32_t Atomic::Increment(volatile int32_t* value) { return os::Atomic::Increment(value); } #if IL2CPP_ENABLE_INTERLOCKED_64_REQUIRED_ALIGNMENT int64_t Atomic::Increment64(volatile int64_t* value) { return os::Atomic::Increment64(value); } #endif int32_t Atomic::Decrement(volatile int32_t* value) { return os::Atomic::Decrement(value); } #if IL2CPP_ENABLE_INTERLOCKED_64_REQUIRED_ALIGNMENT int64_t Atomic::Decrement64(volatile int64_t* value) { return os::Atomic::Decrement64(value); } #endif int32_t Atomic::CompareExchange(volatile int32_t* dest, int32_t exchange, int32_t comparand) { return os::Atomic::CompareExchange(dest, exchange, comparand); } int64_t Atomic::CompareExchange64(volatile int64_t* dest, int64_t exchange, int64_t comparand) { return os::Atomic::CompareExchange64(dest, exchange, comparand); } void* Atomic::CompareExchangePointer(void* volatile* dest, void* exchange, void* comparand) { return os::Atomic::CompareExchangePointer(dest, exchange, comparand); } int32_t Atomic::Exchange(volatile int32_t* dest, int32_t exchange) { return os::Atomic::Exchange(dest, exchange); } #if IL2CPP_ENABLE_INTERLOCKED_64_REQUIRED_ALIGNMENT int64_t Atomic::Exchange64(volatile int64_t* dest, int64_t exchange) { return os::Atomic::Exchange64(dest, exchange); } #endif void* Atomic::ExchangePointer(void* volatile* dest, void* exchange) { return os::Atomic::ExchangePointer(dest, exchange); } int64_t Atomic::Read64(volatile int64_t* addr) { return os::Atomic::Read64(addr); } void Atomic::FullMemoryBarrier() { os::Atomic::FullMemoryBarrier(); } } /* namespace vm */ } /* namespace il2pp */