Lines Matching refs:addr
27 Mutex* QuasiAtomic::GetSwapMutex(const volatile int64_t* addr) { in GetSwapMutex() argument
28 return (*gSwapMutexes)[(reinterpret_cast<uintptr_t>(addr) >> 3U) % kSwapMutexCount]; in GetSwapMutex()
47 int64_t QuasiAtomic::SwapMutexRead64(volatile const int64_t* addr) { in SwapMutexRead64() argument
48 MutexLock mu(Thread::Current(), *GetSwapMutex(addr)); in SwapMutexRead64()
49 return *addr; in SwapMutexRead64()
52 void QuasiAtomic::SwapMutexWrite64(volatile int64_t* addr, int64_t value) { in SwapMutexWrite64() argument
53 MutexLock mu(Thread::Current(), *GetSwapMutex(addr)); in SwapMutexWrite64()
54 *addr = value; in SwapMutexWrite64()
58 bool QuasiAtomic::SwapMutexCas64(int64_t old_value, int64_t new_value, volatile int64_t* addr) { in SwapMutexCas64() argument
59 MutexLock mu(Thread::Current(), *GetSwapMutex(addr)); in SwapMutexCas64()
60 if (*addr == old_value) { in SwapMutexCas64()
61 *addr = new_value; in SwapMutexCas64()