Home
last modified time | relevance | path

Searched refs:kIsAtomic (Results 1 – 4 of 4) sorted by relevance

/llvm-project-15.0.7/compiler-rt/lib/tsan/rtl-old/
H A Dtsan_shadow.h125 void SetAtomic(bool kIsAtomic) { in SetAtomic() argument
127 if (kIsAtomic) in SetAtomic()
129 DCHECK_EQ(IsAtomic(), kIsAtomic); in SetAtomic()
192 (u64(kIsAtomic) << kAtomicShift)); in IsBothReadsOrAtomic()
193 DCHECK_EQ(v, (!IsWrite() && !kIsWrite) || (IsAtomic() && kIsAtomic)); in IsBothReadsOrAtomic()
197 bool ALWAYS_INLINE IsRWNotWeaker(bool kIsWrite, bool kIsAtomic) const { in IsRWNotWeaker() argument
199 DCHECK_EQ(v, (IsAtomic() < kIsAtomic) || in IsRWNotWeaker()
200 (IsAtomic() == kIsAtomic && !IsWrite() <= !kIsWrite)); in IsRWNotWeaker()
204 bool ALWAYS_INLINE IsRWWeakerOrEqual(bool kIsWrite, bool kIsAtomic) const { in IsRWWeakerOrEqual() argument
206 DCHECK_EQ(v, (IsAtomic() > kIsAtomic) || in IsRWWeakerOrEqual()
[all …]
H A Dtsan_update_shadow_word.inc30 if (LIKELY(old.IsRWWeakerOrEqual(kAccessIsWrite, kIsAtomic))) {
37 if (old.IsRWWeakerOrEqual(kAccessIsWrite, kIsAtomic)) {
43 if (LIKELY(old.IsBothReadsOrAtomic(kAccessIsWrite, kIsAtomic)))
51 if (old.IsBothReadsOrAtomic(kAccessIsWrite, kIsAtomic))
H A Dtsan_rtl_access.cpp176 bool kAccessIsWrite, bool kIsAtomic, u64 *shadow_mem, in MemoryAccessImpl1() argument
243 const bool kIsAtomic = false; in UnalignedMemoryAccess() local
257 MemoryAccess(thr, pc, addr, kAccessSizeLog, kAccessIsWrite, kIsAtomic); in UnalignedMemoryAccess()
352 bool kIsAtomic) { in MemoryAccess() argument
386 cur.SetAtomic(kIsAtomic); in MemoryAccess()
400 MemoryAccessImpl1(thr, addr, kAccessSizeLog, kAccessIsWrite, kIsAtomic, in MemoryAccess()
407 bool kAccessIsWrite, bool kIsAtomic, in MemoryAccessImpl() argument
414 MemoryAccessImpl1(thr, addr, kAccessSizeLog, kAccessIsWrite, kIsAtomic, in MemoryAccessImpl()
H A Dtsan_rtl.h472 int kAccessSizeLog, bool kAccessIsWrite, bool kIsAtomic);
474 int kAccessSizeLog, bool kAccessIsWrite, bool kIsAtomic,