Lines Matching defs:thr
431 ThreadState *thr;
558 void ObtainCurrentStack(ThreadState *thr, uptr toppc, StackTraceTy *stack) {
559 uptr size = thr->shadow_stack_pos - thr->shadow_stack;
565 stack->Init(&thr->shadow_stack[start], size, toppc);
574 void ALWAYS_INLINE StatInc(ThreadState *thr, StatType typ, u64 n = 1) {
576 thr->stat[typ] += n;
579 void ALWAYS_INLINE StatSet(ThreadState *thr, StatType typ, u64 n) {
581 thr->stat[typ] = n;
593 void ForkBefore(ThreadState *thr, uptr pc);
594 void ForkParentAfter(ThreadState *thr, uptr pc);
595 void ForkChildAfter(ThreadState *thr, uptr pc);
597 void ReportRace(ThreadState *thr);
598 bool OutputReport(ThreadState *thr, const ScopedReport &srep);
615 u32 CurrentStackId(ThreadState *thr, uptr pc);
617 void PrintCurrentStack(ThreadState *thr, uptr pc);
620 void Initialize(ThreadState *thr);
621 int Finalize(ThreadState *thr);
623 void OnUserAlloc(ThreadState *thr, uptr pc, uptr p, uptr sz, bool write);
624 void OnUserFree(ThreadState *thr, uptr pc, uptr p, bool write);
626 void MemoryAccess(ThreadState *thr, uptr pc, uptr addr,
628 void MemoryAccessImpl(ThreadState *thr, uptr addr,
631 void MemoryAccessRange(ThreadState *thr, uptr pc, uptr addr,
633 void MemoryAccessRangeStep(ThreadState *thr, uptr pc, uptr addr,
635 void UnalignedMemoryAccess(ThreadState *thr, uptr pc, uptr addr,
643 void ALWAYS_INLINE MemoryRead(ThreadState *thr, uptr pc,
645 MemoryAccess(thr, pc, addr, kAccessSizeLog, false, false);
648 void ALWAYS_INLINE MemoryWrite(ThreadState *thr, uptr pc,
650 MemoryAccess(thr, pc, addr, kAccessSizeLog, true, false);
653 void ALWAYS_INLINE MemoryReadAtomic(ThreadState *thr, uptr pc,
655 MemoryAccess(thr, pc, addr, kAccessSizeLog, false, true);
658 void ALWAYS_INLINE MemoryWriteAtomic(ThreadState *thr, uptr pc,
660 MemoryAccess(thr, pc, addr, kAccessSizeLog, true, true);
663 void MemoryResetRange(ThreadState *thr, uptr pc, uptr addr, uptr size);
664 void MemoryRangeFreed(ThreadState *thr, uptr pc, uptr addr, uptr size);
665 void MemoryRangeImitateWrite(ThreadState *thr, uptr pc, uptr addr, uptr size);
667 void ThreadIgnoreBegin(ThreadState *thr, uptr pc);
668 void ThreadIgnoreEnd(ThreadState *thr, uptr pc);
669 void ThreadIgnoreSyncBegin(ThreadState *thr, uptr pc);
670 void ThreadIgnoreSyncEnd(ThreadState *thr, uptr pc);
672 void FuncEntry(ThreadState *thr, uptr pc);
673 void FuncExit(ThreadState *thr);
675 int ThreadCreate(ThreadState *thr, uptr pc, uptr uid, bool detached);
676 void ThreadStart(ThreadState *thr, int tid, uptr os_id);
677 void ThreadFinish(ThreadState *thr);
678 int ThreadTid(ThreadState *thr, uptr pc, uptr uid);
679 void ThreadJoin(ThreadState *thr, uptr pc, int tid);
680 void ThreadDetach(ThreadState *thr, uptr pc, int tid);
681 void ThreadFinalize(ThreadState *thr);
682 void ThreadSetName(ThreadState *thr, const char *name);
683 int ThreadCount(ThreadState *thr);
684 void ProcessPendingSignals(ThreadState *thr);
686 void MutexCreate(ThreadState *thr, uptr pc, uptr addr,
688 void MutexDestroy(ThreadState *thr, uptr pc, uptr addr);
689 void MutexLock(ThreadState *thr, uptr pc, uptr addr, int rec = 1,
691 int MutexUnlock(ThreadState *thr, uptr pc, uptr addr, bool all = false);
692 void MutexReadLock(ThreadState *thr, uptr pc, uptr addr, bool try_lock = false);
693 void MutexReadUnlock(ThreadState *thr, uptr pc, uptr addr);
694 void MutexReadOrWriteUnlock(ThreadState *thr, uptr pc, uptr addr);
695 void MutexRepair(ThreadState *thr, uptr pc, uptr addr); // call on EOWNERDEAD
697 void Acquire(ThreadState *thr, uptr pc, uptr addr);
704 void AcquireGlobal(ThreadState *thr, uptr pc);
705 void Release(ThreadState *thr, uptr pc, uptr addr);
706 void ReleaseStore(ThreadState *thr, uptr pc, uptr addr);
707 void AfterSleep(ThreadState *thr, uptr pc);
708 void AcquireImpl(ThreadState *thr, uptr pc, SyncClock *c);
709 void ReleaseImpl(ThreadState *thr, uptr pc, SyncClock *c);
710 void ReleaseStoreImpl(ThreadState *thr, uptr pc, SyncClock *c);
711 void AcquireReleaseImpl(ThreadState *thr, uptr pc, SyncClock *c);
734 void TraceSwitch(ThreadState *thr);
735 uptr TraceTopPC(ThreadState *thr);
741 void ALWAYS_INLINE TraceAddEvent(ThreadState *thr, FastState fs,
748 StatInc(thr, StatEvents);
754 TraceSwitch(thr);