diff --git a/src/util/sync/sync_spinlock.h b/src/util/sync/sync_spinlock.h index 414f53cbd..71e2035c0 100644 --- a/src/util/sync/sync_spinlock.h +++ b/src/util/sync/sync_spinlock.h @@ -32,10 +32,8 @@ namespace dxvk::sync { } bool try_lock() { - uint32_t expected = 0; - return m_lock.compare_exchange_strong(expected, 1, - std::memory_order_acquire, - std::memory_order_relaxed); + return !m_lock.load() + && !m_lock.exchange(1, std::memory_order_acquire); } private: