Searched refs:SyncVar (Results 1 - 7 of 7) sorted by relevance

/external/compiler-rt/lib/tsan/rtl/
H A Dtsan_sync.h26 struct SyncVar { struct in namespace:__tsan
27 SyncVar();
79 SyncVar* GetOrCreateAndLock(ThreadState *thr, uptr pc,
81 SyncVar* GetIfExistsAndLock(uptr addr);
92 typedef DenseSlabAlloc<SyncVar, 1<<16, 1<<10> SyncAlloc;
97 SyncVar* GetAndLock(ThreadState *thr, uptr pc, uptr addr, bool write_lock,
H A Dtsan_sync.cc20 void DDMutexInit(ThreadState *thr, uptr pc, SyncVar *s);
22 SyncVar::SyncVar() function in class:__tsan::SyncVar
27 void SyncVar::Init(ThreadState *thr, uptr pc, uptr addr, u64 uid) {
39 void SyncVar::Reset() {
94 SyncVar *s = sync_alloc_.Map(idx & ~kFlagMask);
115 SyncVar * s = sync_alloc_.Map(idx & ~kFlagMask);
120 SyncVar* MetaMap::GetOrCreateAndLock(ThreadState *thr, uptr pc,
125 SyncVar* MetaMap::GetIfExistsAndLock(uptr addr) {
129 SyncVar* MetaMa
[all...]
H A Dtsan_rtl_mutex.cc47 void DDMutexInit(ThreadState *thr, uptr pc, SyncVar *s) {
79 SyncVar *s = ctx->metamap.GetOrCreateAndLock(thr, pc, addr, true);
103 SyncVar *s = ctx->metamap.GetIfExistsAndLock(addr);
113 && s->owner_tid != SyncVar::kInvalidTid
137 SyncVar *s = ctx->metamap.GetIfExistsAndLock(addr);
152 SyncVar *s = ctx->metamap.GetOrCreateAndLock(thr, pc, addr, true);
156 if (s->owner_tid == SyncVar::kInvalidTid) {
196 SyncVar *s = ctx->metamap.GetOrCreateAndLock(thr, pc, addr, true);
211 s->owner_tid = SyncVar::kInvalidTid;
239 SyncVar *
[all...]
H A Dtsan_interface_atomic.cc294 SyncVar *s = ctx->metamap.GetOrCreateAndLock(thr, pc, (uptr)a, false);
328 SyncVar *s = ctx->metamap.GetOrCreateAndLock(thr, pc, (uptr)a, true);
340 SyncVar *s = 0;
463 SyncVar *s = 0;
H A Dtsan_rtl_report.cc265 void ScopedReport::AddMutex(const SyncVar *s) {
282 uptr addr = SyncVar::SplitId(id, &uid);
283 SyncVar *s = ctx->metamap.GetIfExistsAndLock(addr);
H A Dtsan_rtl.h507 void AddMutex(const SyncVar *s);
/external/compiler-rt/lib/tsan/tests/unit/
H A Dtsan_sync_test.cc56 SyncVar *s1 = m->GetIfExistsAndLock((uptr)&block[0]);
57 EXPECT_EQ(s1, (SyncVar*)0);
59 EXPECT_NE(s1, (SyncVar*)0);
62 SyncVar *s2 = m->GetOrCreateAndLock(thr, 0, (uptr)&block[1], false);
63 EXPECT_NE(s2, (SyncVar*)0);
68 EXPECT_EQ(s1, (SyncVar*)0);
70 EXPECT_EQ(s2, (SyncVar*)0);
81 SyncVar *s1 = m->GetOrCreateAndLock(thr, 0, (uptr)&block1[0], true);
83 SyncVar *s2 = m->GetOrCreateAndLock(thr, 0, (uptr)&block1[1], true);
97 EXPECT_EQ(s1, (SyncVar*)
[all...]

Completed in 117 milliseconds