| /llvm-project-15.0.7/compiler-rt/lib/tsan/tests/unit/ |
| H A D | tsan_shadow_test.cpp | 51 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 D | tsan_shadow.h | 67 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 D | tsan_rtl_mutex.cpp | 166 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 D | tsan_interface_atomic.cpp | 230 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 D | tsan_defs.h | 173 kAccessAtomic = 1 << 1, enumerator
|
| H A D | tsan_rtl_report.cpp | 189 mop->atomic = typ & kAccessAtomic; in AddMemoryAccess() 483 bool is_atomic = typ & kAccessAtomic; in RestoreStack() 726 ((typ0 & kAccessAtomic) || (typ1 & kAccessAtomic)) && in ReportRace()
|
| H A D | tsan_rtl_access.cpp | 33 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 D | tsan_rtl_mutex.cpp | 165 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 D | tsan_interface_atomic.cpp | 230 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 D | tsan_rtl_access.cpp | 35 ev->is_atomic = !!(typ & kAccessAtomic); in TryTraceMemoryAccess() 48 evex->is_atomic = !!(typ & kAccessAtomic); in TryTraceMemoryAccess() 241 DCHECK(!(typ & kAccessAtomic)); in UnalignedMemoryAccess()
|
| H A D | tsan_defs.h | 197 kAccessAtomic = 1 << 1, enumerator
|
| H A D | tsan_rtl.h | 506 bool is_atomic = typ & kAccessAtomic; in MemoryAccess()
|
| H A D | tsan_rtl_report.cpp | 568 bool is_atomic = typ & kAccessAtomic; in RestoreStack()
|