reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

projects/compiler-rt/lib/tsan/rtl/tsan_defs.h
  167 struct ThreadState;
projects/compiler-rt/lib/tsan/rtl/tsan_interface.h
  217 struct ThreadState;

References

projects/compiler-rt/lib/tsan/rtl/tsan_external.cpp
   45 void InsertShadowStackFrameForTag(ThreadState *thr, uptr tag) {
   59 typedef void(*AccessFunc)(ThreadState *, uptr, uptr, int);
   62   ThreadState *thr = cur_thread();
projects/compiler-rt/lib/tsan/rtl/tsan_fd.cpp
   49 static FdSync *allocsync(ThreadState *thr, uptr pc) {
   62 static void unref(ThreadState *thr, uptr pc, FdSync *s) {
   73 static FdDesc *fddesc(ThreadState *thr, uptr pc, int fd) {
   94 static void init(ThreadState *thr, uptr pc, int fd, FdSync *s,
  128 void FdOnFork(ThreadState *thr, uptr pc) {
  160 void FdAcquire(ThreadState *thr, uptr pc, int fd) {
  171 void FdRelease(ThreadState *thr, uptr pc, int fd) {
  182 void FdAccess(ThreadState *thr, uptr pc, int fd) {
  190 void FdClose(ThreadState *thr, uptr pc, int fd, bool write) {
  218 void FdFileCreate(ThreadState *thr, uptr pc, int fd) {
  225 void FdDup(ThreadState *thr, uptr pc, int oldfd, int newfd, bool write) {
  236 void FdPipeCreate(ThreadState *thr, uptr pc, int rfd, int wfd) {
  244 void FdEventCreate(ThreadState *thr, uptr pc, int fd) {
  251 void FdSignalCreate(ThreadState *thr, uptr pc, int fd) {
  258 void FdInotifyCreate(ThreadState *thr, uptr pc, int fd) {
  265 void FdPollCreate(ThreadState *thr, uptr pc, int fd) {
  272 void FdSocketCreate(ThreadState *thr, uptr pc, int fd) {
  280 void FdSocketAccept(ThreadState *thr, uptr pc, int fd, int newfd) {
  289 void FdSocketConnecting(ThreadState *thr, uptr pc, int fd) {
  297 void FdSocketConnect(ThreadState *thr, uptr pc, int fd) {
projects/compiler-rt/lib/tsan/rtl/tsan_fd.h
   41 void FdAcquire(ThreadState *thr, uptr pc, int fd);
   42 void FdRelease(ThreadState *thr, uptr pc, int fd);
   43 void FdAccess(ThreadState *thr, uptr pc, int fd);
   44 void FdClose(ThreadState *thr, uptr pc, int fd, bool write = true);
   45 void FdFileCreate(ThreadState *thr, uptr pc, int fd);
   46 void FdDup(ThreadState *thr, uptr pc, int oldfd, int newfd, bool write);
   47 void FdPipeCreate(ThreadState *thr, uptr pc, int rfd, int wfd);
   48 void FdEventCreate(ThreadState *thr, uptr pc, int fd);
   49 void FdSignalCreate(ThreadState *thr, uptr pc, int fd);
   50 void FdInotifyCreate(ThreadState *thr, uptr pc, int fd);
   51 void FdPollCreate(ThreadState *thr, uptr pc, int fd);
   52 void FdSocketCreate(ThreadState *thr, uptr pc, int fd);
   53 void FdSocketAccept(ThreadState *thr, uptr pc, int fd, int newfd);
   54 void FdSocketConnecting(ThreadState *thr, uptr pc, int fd);
   55 void FdSocketConnect(ThreadState *thr, uptr pc, int fd);
   57 void FdOnFork(ThreadState *thr, uptr pc);
projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.h
   11   ScopedInterceptor(ThreadState *thr, const char *fname, uptr pc);
   16   ThreadState *const thr_;
projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
  239 static ThreadSignalContext *SigCtx(ThreadState *thr) {
  249 ScopedInterceptor::ScopedInterceptor(ThreadState *thr, const char *fname,
  320   explicit BlockingCall(ThreadState *thr)
  343   ThreadState *thr;
  397 static int setup_at_exit_wrapper(ThreadState *thr, uptr pc, void(*f)(),
  418 static int setup_at_exit_wrapper(ThreadState *thr, uptr pc, void(*f)(),
  449   ThreadState *thr = cur_thread();
  478 static void JmpBufGarbageCollect(ThreadState *thr, uptr sp) {
  490 static void SetJmp(ThreadState *thr, uptr sp) {
  508 static void LongJmp(ThreadState *thr, uptr *env) {
  766 static void *mmap_interceptor(ThreadState *thr, uptr pc, Mmap real_mmap,
  889   ThreadState *thr = cur_thread();
  933     ThreadState *thr = cur_thread();
 1120   ThreadState *thr;
 1147 static int cond_wait(ThreadState *thr, uptr pc, ScopedInterceptor *si,
 1878 static void CallUserSignalHandler(ThreadState *thr, bool sync, bool acquire,
 1940 void ProcessPendingSignals(ThreadState *thr) {
 1976   ThreadState *thr = cur_thread();
 2138   ThreadState *thr;
 2180 static int OnExit(ThreadState *thr) {
 2187   ThreadState *thr;
 2193 static void HandleRecvmsg(ThreadState *thr, uptr pc,
 2418   ThreadState *thr;
 2420   explicit ScopedSyscall(ThreadState *thr)
 2538   ThreadState *thr = cur_thread();
 2595   ThreadState *thr = cur_thread();
projects/compiler-rt/lib/tsan/rtl/tsan_interface.h
  397 void __tsan_go_atomic32_load(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  399 void __tsan_go_atomic64_load(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  401 void __tsan_go_atomic32_store(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  403 void __tsan_go_atomic64_store(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  405 void __tsan_go_atomic32_fetch_add(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  407 void __tsan_go_atomic64_fetch_add(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  409 void __tsan_go_atomic32_exchange(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  411 void __tsan_go_atomic64_exchange(ThreadState *thr, uptr cpc, uptr pc, u8 *a);
  413 void __tsan_go_atomic32_compare_exchange(ThreadState *thr, uptr cpc, uptr pc,
  416 void __tsan_go_atomic64_compare_exchange(ThreadState *thr, uptr cpc, uptr pc,
projects/compiler-rt/lib/tsan/rtl/tsan_interface_ann.cpp
   33   ScopedAnnotation(ThreadState *thr, const char *aname, uptr pc)
   44   ThreadState *const thr_;
projects/compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp
  222 static T AtomicLoad(ThreadState *thr, uptr pc, const volatile T *a, morder mo) {
  258 static void AtomicStore(ThreadState *thr, uptr pc, volatile T *a, T v,
  281 static T AtomicRMW(ThreadState *thr, uptr pc, volatile T *a, T v, morder mo) {
  338 static T AtomicExchange(ThreadState *thr, uptr pc, volatile T *a, T v,
  344 static T AtomicFetchAdd(ThreadState *thr, uptr pc, volatile T *a, T v,
  350 static T AtomicFetchSub(ThreadState *thr, uptr pc, volatile T *a, T v,
  356 static T AtomicFetchAnd(ThreadState *thr, uptr pc, volatile T *a, T v,
  362 static T AtomicFetchOr(ThreadState *thr, uptr pc, volatile T *a, T v,
  368 static T AtomicFetchXor(ThreadState *thr, uptr pc, volatile T *a, T v,
  374 static T AtomicFetchNand(ThreadState *thr, uptr pc, volatile T *a, T v,
  403 static bool AtomicCAS(ThreadState *thr, uptr pc,
  436 static T AtomicCAS(ThreadState *thr, uptr pc,
  447 static void AtomicFence(ThreadState *thr, uptr pc, morder mo) {
  491   ScopedAtomic(ThreadState *thr, uptr pc, const volatile void *a,
  502   ThreadState *thr_;
  505 static void AtomicStatInc(ThreadState *thr, uptr size, morder mo, StatType t) {
projects/compiler-rt/lib/tsan/rtl/tsan_interface_inl.h
   87     ThreadState *thr = cur_thread();
   96   ThreadState *thr = cur_thread();
projects/compiler-rt/lib/tsan/rtl/tsan_interface_java.cpp
   40   ScopedJavaFunc(ThreadState *thr, uptr pc)
   52   ThreadState *thr_;
projects/compiler-rt/lib/tsan/rtl/tsan_mman.cpp
   86   ThreadState *thr = cur_thread();
  109   ThreadState *thr = cur_thread();
  139 static void SignalUnsafeCall(ThreadState *thr, uptr pc) {
  155 void *user_alloc_internal(ThreadState *thr, uptr pc, uptr sz, uptr align,
  178 void user_free(ThreadState *thr, uptr pc, void *p, bool signal) {
  187 void *user_alloc(ThreadState *thr, uptr pc, uptr sz) {
  191 void *user_calloc(ThreadState *thr, uptr pc, uptr size, uptr n) {
  204 void *user_reallocarray(ThreadState *thr, uptr pc, void *p, uptr size, uptr n) {
  214 void OnUserAlloc(ThreadState *thr, uptr pc, uptr p, uptr sz, bool write) {
  223 void OnUserFree(ThreadState *thr, uptr pc, uptr p, bool write) {
  231 void *user_realloc(ThreadState *thr, uptr pc, void *p, uptr sz) {
  249 void *user_memalign(ThreadState *thr, uptr pc, uptr align, uptr sz) {
  260 int user_posix_memalign(ThreadState *thr, uptr pc, void **memptr, uptr align,
  277 void *user_aligned_alloc(ThreadState *thr, uptr pc, uptr align, uptr sz) {
  288 void *user_valloc(ThreadState *thr, uptr pc, uptr sz) {
  292 void *user_pvalloc(ThreadState *thr, uptr pc, uptr sz) {
  318   ThreadState *thr = cur_thread();
  326   ThreadState *thr = cur_thread();
  334   ThreadState *thr = cur_thread();
  343   ThreadState *thr = cur_thread();
  389   ThreadState *thr = cur_thread();
projects/compiler-rt/lib/tsan/rtl/tsan_mman.h
   29 void *user_alloc_internal(ThreadState *thr, uptr pc, uptr sz,
   32 void user_free(ThreadState *thr, uptr pc, void *p, bool signal = true);
   34 void *user_alloc(ThreadState *thr, uptr pc, uptr sz);
   35 void *user_calloc(ThreadState *thr, uptr pc, uptr sz, uptr n);
   36 void *user_realloc(ThreadState *thr, uptr pc, void *p, uptr sz);
   37 void *user_reallocarray(ThreadState *thr, uptr pc, void *p, uptr sz, uptr n);
   38 void *user_memalign(ThreadState *thr, uptr pc, uptr align, uptr sz);
   39 int user_posix_memalign(ThreadState *thr, uptr pc, void **memptr, uptr align,
   41 void *user_aligned_alloc(ThreadState *thr, uptr pc, uptr align, uptr sz);
   42 void *user_valloc(ThreadState *thr, uptr pc, uptr sz);
   43 void *user_pvalloc(ThreadState *thr, uptr pc, uptr sz);
projects/compiler-rt/lib/tsan/rtl/tsan_mutex.cpp
  174 void CheckNoLocks(ThreadState *thr) {
projects/compiler-rt/lib/tsan/rtl/tsan_mutex.h
   86 void CheckNoLocks(ThreadState *thr);
projects/compiler-rt/lib/tsan/rtl/tsan_platform.h
 1017 void ImitateTlsWrite(ThreadState *thr, uptr tls_addr, uptr tls_size);
projects/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
  427 void ImitateTlsWrite(ThreadState *thr, uptr tls_addr, uptr tls_size) {
projects/compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
   49 THREADLOCAL char cur_thread_placeholder[sizeof(ThreadState)] ALIGNED(64);
  243 void UnmapShadow(ThreadState *thr, uptr addr, uptr size) {
  350 void Initialize(ThreadState *thr) {
  442 int Finalize(ThreadState *thr) {
  494 void ForkBefore(ThreadState *thr, uptr pc) {
  499 void ForkParentAfter(ThreadState *thr, uptr pc) {
  504 void ForkChildAfter(ThreadState *thr, uptr pc) {
  541 u32 CurrentStackId(ThreadState *thr, uptr pc) {
  561 void TraceSwitch(ThreadState *thr) {
  581 uptr TraceTopPC(ThreadState *thr) {
  623 void HandleRace(ThreadState *thr, u64 *shadow_mem,
  635 static inline bool HappensBefore(Shadow old, ThreadState *thr) {
  640 void MemoryAccessImpl1(ThreadState *thr, uptr addr,
  709 void UnalignedMemoryAccess(ThreadState *thr, uptr pc, uptr addr,
  818 void MemoryAccess(ThreadState *thr, uptr pc, uptr addr,
  884 void MemoryAccessImpl(ThreadState *thr, uptr addr,
  900 static void MemoryRangeSet(ThreadState *thr, uptr pc, uptr addr, uptr size,
  961 void MemoryResetRange(ThreadState *thr, uptr pc, uptr addr, uptr size) {
  965 void MemoryRangeFreed(ThreadState *thr, uptr pc, uptr addr, uptr size) {
  987 void MemoryRangeImitateWrite(ThreadState *thr, uptr pc, uptr addr, uptr size) {
  999 void MemoryRangeImitateWriteOrResetRange(ThreadState *thr, uptr pc, uptr addr,
 1008 void FuncEntry(ThreadState *thr, uptr pc) {
 1030 void FuncExit(ThreadState *thr) {
 1045 void ThreadIgnoreBegin(ThreadState *thr, uptr pc, bool save_stack) {
 1056 void ThreadIgnoreEnd(ThreadState *thr, uptr pc) {
 1071   ThreadState *thr = cur_thread();
 1076 void ThreadIgnoreSyncBegin(ThreadState *thr, uptr pc, bool save_stack) {
 1086 void ThreadIgnoreSyncEnd(ThreadState *thr, uptr pc) {
projects/compiler-rt/lib/tsan/rtl/tsan_rtl.h
  343   ThreadState *thr; // currently wired thread, or nullptr
  381   ThreadState* current;
  465 INLINE ThreadState *cur_thread() {
  469   ThreadState *thr = reinterpret_cast<ThreadState *>(cur_thread_placeholder);
  473 INLINE void set_cur_thread(ThreadState *thr) {
  484   ThreadState *thr;
  647 void ObtainCurrentStack(ThreadState *thr, uptr toppc, StackTraceTy *stack,
  669 void ALWAYS_INLINE StatInc(ThreadState *thr, StatType typ, u64 n = 1) {
  674 void ALWAYS_INLINE StatSet(ThreadState *thr, StatType typ, u64 n) {
  683 void UnmapShadow(ThreadState *thr, uptr addr, uptr size);
  689 void ForkBefore(ThreadState *thr, uptr pc);
  690 void ForkParentAfter(ThreadState *thr, uptr pc);
  691 void ForkChildAfter(ThreadState *thr, uptr pc);
  693 void ReportRace(ThreadState *thr);
  694 bool OutputReport(ThreadState *thr, const ScopedReport &srep);
  711 u32 CurrentStackId(ThreadState *thr, uptr pc);
  713 void PrintCurrentStack(ThreadState *thr, uptr pc);
  716 void Initialize(ThreadState *thr);
  718 int Finalize(ThreadState *thr);
  720 void OnUserAlloc(ThreadState *thr, uptr pc, uptr p, uptr sz, bool write);
  721 void OnUserFree(ThreadState *thr, uptr pc, uptr p, bool write);
  723 void MemoryAccess(ThreadState *thr, uptr pc, uptr addr,
  725 void MemoryAccessImpl(ThreadState *thr, uptr addr,
  728 void MemoryAccessRange(ThreadState *thr, uptr pc, uptr addr,
  730 void MemoryAccessRangeStep(ThreadState *thr, uptr pc, uptr addr,
  732 void UnalignedMemoryAccess(ThreadState *thr, uptr pc, uptr addr,
  740 void ALWAYS_INLINE MemoryRead(ThreadState *thr, uptr pc,
  745 void ALWAYS_INLINE MemoryWrite(ThreadState *thr, uptr pc,
  750 void ALWAYS_INLINE MemoryReadAtomic(ThreadState *thr, uptr pc,
  755 void ALWAYS_INLINE MemoryWriteAtomic(ThreadState *thr, uptr pc,
  760 void MemoryResetRange(ThreadState *thr, uptr pc, uptr addr, uptr size);
  761 void MemoryRangeFreed(ThreadState *thr, uptr pc, uptr addr, uptr size);
  762 void MemoryRangeImitateWrite(ThreadState *thr, uptr pc, uptr addr, uptr size);
  763 void MemoryRangeImitateWriteOrResetRange(ThreadState *thr, uptr pc, uptr addr,
  766 void ThreadIgnoreBegin(ThreadState *thr, uptr pc, bool save_stack = true);
  767 void ThreadIgnoreEnd(ThreadState *thr, uptr pc);
  768 void ThreadIgnoreSyncBegin(ThreadState *thr, uptr pc, bool save_stack = true);
  769 void ThreadIgnoreSyncEnd(ThreadState *thr, uptr pc);
  771 void FuncEntry(ThreadState *thr, uptr pc);
  772 void FuncExit(ThreadState *thr);
  774 int ThreadCreate(ThreadState *thr, uptr pc, uptr uid, bool detached);
  775 void ThreadStart(ThreadState *thr, int tid, tid_t os_id,
  777 void ThreadFinish(ThreadState *thr);
  778 int ThreadTid(ThreadState *thr, uptr pc, uptr uid);
  779 void ThreadJoin(ThreadState *thr, uptr pc, int tid);
  780 void ThreadDetach(ThreadState *thr, uptr pc, int tid);
  781 void ThreadFinalize(ThreadState *thr);
  782 void ThreadSetName(ThreadState *thr, const char *name);
  783 int ThreadCount(ThreadState *thr);
  784 void ProcessPendingSignals(ThreadState *thr);
  785 void ThreadNotJoined(ThreadState *thr, uptr pc, int tid, uptr uid);
  789 void ProcWire(Processor *proc, ThreadState *thr);
  790 void ProcUnwire(Processor *proc, ThreadState *thr);
  794 void MutexCreate(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0);
  795 void MutexDestroy(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0);
  796 void MutexPreLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0);
  797 void MutexPostLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0,
  799 int  MutexUnlock(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0);
  800 void MutexPreReadLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0);
  801 void MutexPostReadLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz = 0);
  802 void MutexReadUnlock(ThreadState *thr, uptr pc, uptr addr);
  803 void MutexReadOrWriteUnlock(ThreadState *thr, uptr pc, uptr addr);
  804 void MutexRepair(ThreadState *thr, uptr pc, uptr addr);  // call on EOWNERDEAD
  805 void MutexInvalidAccess(ThreadState *thr, uptr pc, uptr addr);
  807 void Acquire(ThreadState *thr, uptr pc, uptr addr);
  814 void AcquireGlobal(ThreadState *thr, uptr pc);
  815 void Release(ThreadState *thr, uptr pc, uptr addr);
  816 void ReleaseStore(ThreadState *thr, uptr pc, uptr addr);
  817 void AfterSleep(ThreadState *thr, uptr pc);
  818 void AcquireImpl(ThreadState *thr, uptr pc, SyncClock *c);
  819 void ReleaseImpl(ThreadState *thr, uptr pc, SyncClock *c);
  820 void ReleaseStoreImpl(ThreadState *thr, uptr pc, SyncClock *c);
  821 void AcquireReleaseImpl(ThreadState *thr, uptr pc, SyncClock *c);
  844 void TraceSwitch(ThreadState *thr);
  845 uptr TraceTopPC(ThreadState *thr);
  851 void ALWAYS_INLINE TraceAddEvent(ThreadState *thr, FastState fs,
  879 ThreadState *FiberCreate(ThreadState *thr, uptr pc, unsigned flags);
  879 ThreadState *FiberCreate(ThreadState *thr, uptr pc, unsigned flags);
  880 void FiberDestroy(ThreadState *thr, uptr pc, ThreadState *fiber);
  880 void FiberDestroy(ThreadState *thr, uptr pc, ThreadState *fiber);
  881 void FiberSwitch(ThreadState *thr, uptr pc, ThreadState *fiber, unsigned flags);
  881 void FiberSwitch(ThreadState *thr, uptr pc, ThreadState *fiber, unsigned flags);
projects/compiler-rt/lib/tsan/rtl/tsan_rtl_mutex.cpp
   25 void ReportDeadlock(ThreadState *thr, uptr pc, DDReport *r);
   28   ThreadState *thr;
   31   Callback(ThreadState *thr, uptr pc)
   42 void DDMutexInit(ThreadState *thr, uptr pc, SyncVar *s) {
   48 static void ReportMutexMisuse(ThreadState *thr, uptr pc, ReportType typ,
   64 void MutexCreate(ThreadState *thr, uptr pc, uptr addr, u32 flagz) {
   80 void MutexDestroy(ThreadState *thr, uptr pc, uptr addr, u32 flagz) {
  142 void MutexPreLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz) {
  158 void MutexPostLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz, int rec) {
  213 int MutexUnlock(ThreadState *thr, uptr pc, uptr addr, u32 flagz) {
  256 void MutexPreReadLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz) {
  268 void MutexPostReadLock(ThreadState *thr, uptr pc, uptr addr, u32 flagz) {
  308 void MutexReadUnlock(ThreadState *thr, uptr pc, uptr addr) {
  340 void MutexReadOrWriteUnlock(ThreadState *thr, uptr pc, uptr addr) {
  387 void MutexRepair(ThreadState *thr, uptr pc, uptr addr) {
  395 void MutexInvalidAccess(ThreadState *thr, uptr pc, uptr addr) {
  403 void Acquire(ThreadState *thr, uptr pc, uptr addr) {
  415   ThreadState *thr = reinterpret_cast<ThreadState*>(arg);
  423 void AcquireGlobal(ThreadState *thr, uptr pc) {
  432 void Release(ThreadState *thr, uptr pc, uptr addr) {
  444 void ReleaseStore(ThreadState *thr, uptr pc, uptr addr) {
  458   ThreadState *thr = reinterpret_cast<ThreadState*>(arg);
  466 void AfterSleep(ThreadState *thr, uptr pc) {
  477 void AcquireImpl(ThreadState *thr, uptr pc, SyncClock *c) {
  485 void ReleaseImpl(ThreadState *thr, uptr pc, SyncClock *c) {
  494 void ReleaseStoreImpl(ThreadState *thr, uptr pc, SyncClock *c) {
  503 void AcquireReleaseImpl(ThreadState *thr, uptr pc, SyncClock *c) {
  513 void ReportDeadlock(ThreadState *thr, uptr pc, DDReport *r) {
projects/compiler-rt/lib/tsan/rtl/tsan_rtl_proc.cpp
   46 void ProcWire(Processor *proc, ThreadState *thr) {
   53 void ProcUnwire(Processor *proc, ThreadState *thr) {
projects/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cpp
  236   ThreadState *thr = tctx->thr;
  249   ThreadState *thr = tctx->thr;
  442 static bool HandleRacyStacks(ThreadState *thr, VarSizeStackTrace traces[2],
  488 static void AddRacyStacks(ThreadState *thr, VarSizeStackTrace traces[2],
  503 bool OutputReport(ThreadState *thr, const ScopedReport &srep) {
  576 static bool RaceBetweenAtomicAndFree(ThreadState *thr) {
  589 void ReportRace(ThreadState *thr) {
  717 void PrintCurrentStack(ThreadState *thr, uptr pc) {
projects/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cpp
   42   ThreadState *caller_thr = static_cast<ThreadState *>(arg);
   48   ThreadState *thr;
   76   ThreadState *thr1 = static_cast<ThreadState*>(arg);
   81   ThreadState *thr;
   95   new(thr) ThreadState(ctx, tid, unique_id, epoch0, reuse_count,
  195 static void ThreadCheckIgnore(ThreadState *thr) {
  207 void ThreadFinalize(ThreadState *thr) {
  225 int ThreadCount(ThreadState *thr) {
  231 int ThreadCreate(ThreadState *thr, uptr pc, uptr uid, bool detached) {
  242 void ThreadStart(ThreadState *thr, int tid, tid_t os_id,
  277 void ThreadFinish(ThreadState *thr) {
  297 int ThreadTid(ThreadState *thr, uptr pc, uptr uid) {
  303 void ThreadJoin(ThreadState *thr, uptr pc, int tid) {
  310 void ThreadDetach(ThreadState *thr, uptr pc, int tid) {
  316 void ThreadNotJoined(ThreadState *thr, uptr pc, int tid, uptr uid) {
  322 void ThreadSetName(ThreadState *thr, const char *name) {
  326 void MemoryAccessRange(ThreadState *thr, uptr pc, uptr addr,
  409 void FiberSwitchImpl(ThreadState *from, ThreadState *to) {
  409 void FiberSwitchImpl(ThreadState *from, ThreadState *to) {
  416 ThreadState *FiberCreate(ThreadState *thr, uptr pc, unsigned flags) {
  416 ThreadState *FiberCreate(ThreadState *thr, uptr pc, unsigned flags) {
  417   void *mem = internal_alloc(MBlockThreadContex, sizeof(ThreadState));
  418   ThreadState *fiber = static_cast<ThreadState *>(mem);
  427 void FiberDestroy(ThreadState *thr, uptr pc, ThreadState *fiber) {
  427 void FiberDestroy(ThreadState *thr, uptr pc, ThreadState *fiber) {
  434 void FiberSwitch(ThreadState *thr, uptr pc,
  435                  ThreadState *fiber, unsigned flags) {
projects/compiler-rt/lib/tsan/rtl/tsan_symbolize.cpp
   25   ThreadState *thr = cur_thread();
   32   ThreadState *thr = cur_thread();
projects/compiler-rt/lib/tsan/rtl/tsan_sync.cpp
   19 void DDMutexInit(ThreadState *thr, uptr pc, SyncVar *s);
   26 void SyncVar::Init(ThreadState *thr, uptr pc, uptr addr, u64 uid) {
   61 void MetaMap::AllocBlock(ThreadState *thr, uptr pc, uptr p, uptr sz) {
  196 SyncVar* MetaMap::GetOrCreateAndLock(ThreadState *thr, uptr pc,
  205 SyncVar* MetaMap::GetAndLock(ThreadState *thr, uptr pc,
projects/compiler-rt/lib/tsan/rtl/tsan_sync.h
   70   void Init(ThreadState *thr, uptr pc, uptr addr, u64 uid);
  115   void AllocBlock(ThreadState *thr, uptr pc, uptr p, uptr sz);
  121   SyncVar* GetOrCreateAndLock(ThreadState *thr, uptr pc,
  139   SyncVar* GetAndLock(ThreadState *thr, uptr pc, uptr addr, bool write_lock,