Home
last modified time | relevance | path

Searched refs:kAccessAtomic (Results 1 – 13 of 13) sorted by relevance

/llvm-project-15.0.7/compiler-rt/lib/tsan/tests/unit/
H A Dtsan_shadow_test.cpp51 Shadow s3(fs, 0xfffff8 + 0, 8, kAccessRead | kAccessAtomic); in TEST()
54 CHECK(!s0.IsBothReadsOrAtomic(kAccessRead | kAccessAtomic)); in TEST()
55 CHECK(!s1.IsBothReadsOrAtomic(kAccessAtomic)); in TEST()
58 CHECK(s2.IsBothReadsOrAtomic(kAccessAtomic)); in TEST()
61 CHECK(s3.IsBothReadsOrAtomic(kAccessAtomic)); in TEST()
65 CHECK(!s0.IsRWWeakerOrEqual(kAccessRead | kAccessAtomic)); in TEST()
68 CHECK(!s1.IsRWWeakerOrEqual(kAccessWrite | kAccessAtomic)); in TEST()
70 CHECK(!s2.IsRWWeakerOrEqual(kAccessRead | kAccessAtomic)); in TEST()
71 CHECK(s2.IsRWWeakerOrEqual(kAccessWrite | kAccessAtomic)); in TEST()
75 CHECK(s3.IsRWWeakerOrEqual(kAccessRead | kAccessAtomic)); in TEST()
[all …]
/llvm-project-15.0.7/compiler-rt/lib/tsan/rtl/
H A Dtsan_shadow.h67 raw_ |= (!!(typ & kAccessAtomic) << kIsAtomicShift) | in Shadow()
94 *typ |= kAccessAtomic; in GetAccess()
103 u32 is_atomic = !!(typ & kAccessAtomic); in IsBothReadsOrAtomic()
114 u32 is_atomic = !!(typ & kAccessAtomic); in IsRWWeakerOrEqual()
H A Dtsan_rtl_mutex.cpp166 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostLock()
219 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexUnlock()
284 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostReadLock()
327 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadUnlock()
368 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadOrWriteUnlock()
H A Dtsan_interface_atomic.cpp230 kAccessRead | kAccessAtomic); in AtomicLoad()
245 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessRead | kAccessAtomic); in AtomicLoad()
265 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicStore()
286 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicRMW()
414 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicCAS()
H A Dtsan_defs.h173 kAccessAtomic = 1 << 1, enumerator
H A Dtsan_rtl_report.cpp189 mop->atomic = typ & kAccessAtomic; in AddMemoryAccess()
483 bool is_atomic = typ & kAccessAtomic; in RestoreStack()
726 ((typ0 & kAccessAtomic) || (typ1 & kAccessAtomic)) && in ReportRace()
H A Dtsan_rtl_access.cpp33 ev->is_atomic = !!(typ & kAccessAtomic); in TryTraceMemoryAccess()
46 evex->is_atomic = !!(typ & kAccessAtomic); in TryTraceMemoryAccess()
338 _mm_set1_epi32((typ & (kAccessRead | kAccessAtomic)) << 30); in CheckRaces()
/llvm-project-15.0.7/compiler-rt/lib/tsan/rtl-old/
H A Dtsan_rtl_mutex.cpp165 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostLock()
215 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexUnlock()
273 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexPostReadLock()
313 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadUnlock()
346 MemoryAccess(thr, pc, addr, 1, kAccessRead | kAccessAtomic); in MutexReadOrWriteUnlock()
H A Dtsan_interface_atomic.cpp230 kAccessRead | kAccessAtomic); in AtomicLoad()
244 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessRead | kAccessAtomic); in AtomicLoad()
264 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicStore()
285 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicRMW()
410 MemoryAccess(thr, pc, (uptr)a, AccessSize<T>(), kAccessWrite | kAccessAtomic); in AtomicCAS()
H A Dtsan_rtl_access.cpp35 ev->is_atomic = !!(typ & kAccessAtomic); in TryTraceMemoryAccess()
48 evex->is_atomic = !!(typ & kAccessAtomic); in TryTraceMemoryAccess()
241 DCHECK(!(typ & kAccessAtomic)); in UnalignedMemoryAccess()
H A Dtsan_defs.h197 kAccessAtomic = 1 << 1, enumerator
H A Dtsan_rtl.h506 bool is_atomic = typ & kAccessAtomic; in MemoryAccess()
H A Dtsan_rtl_report.cpp568 bool is_atomic = typ & kAccessAtomic; in RestoreStack()