1 //===-- tsan_stat.h ---------------------------------------------*- C++ -*-===//
3 // This file is distributed under the University of Illinois Open Source
4 // License. See LICENSE.TXT for details.
6 //===----------------------------------------------------------------------===//
8 // This file is a part of ThreadSanitizer (TSan), a race detector.
10 //===----------------------------------------------------------------------===//
18 // Memory access processing related stuff.
22 StatMop1
, // These must be consequtive.
33 StatShadowNonZero
, // Derived.
36 StatShadowNotIntersect
,
38 StatShadowAnotherThread
,
73 StatClockAcquireEmpty
,
74 StatClockAcquireFastRelease
,
76 StatClockAcquiredSomething
,
79 StatClockReleaseResize
,
83 StatClockReleaseAcquired
,
84 StatClockReleaseClearTail
,
85 // Clocks - release store.
91 // Clocks - acquire-release.
92 StatClockAcquireRelease
,
119 // Dynamic annotations.
121 StatAnnotateHappensBefore
,
122 StatAnnotateHappensAfter
,
123 StatAnnotateCondVarSignal
,
124 StatAnnotateCondVarSignalAll
,
125 StatAnnotateMutexIsNotPHB
,
126 StatAnnotateCondVarWait
,
127 StatAnnotateRWLockCreate
,
128 StatAnnotateRWLockCreateStatic
,
129 StatAnnotateRWLockDestroy
,
130 StatAnnotateRWLockAcquired
,
131 StatAnnotateRWLockReleased
,
132 StatAnnotateTraceMemory
,
133 StatAnnotateFlushState
,
134 StatAnnotateNewMemory
,
136 StatAnnotateFlushExpectedRaces
,
137 StatAnnotateEnableRaceDetection
,
138 StatAnnotateMutexIsUsedAsCondVar
,
141 StatAnnotatePCQDestroy
,
142 StatAnnotatePCQCreate
,
143 StatAnnotateExpectRace
,
144 StatAnnotateBenignRaceSized
,
145 StatAnnotateBenignRace
,
146 StatAnnotateIgnoreReadsBegin
,
147 StatAnnotateIgnoreReadsEnd
,
148 StatAnnotateIgnoreWritesBegin
,
149 StatAnnotateIgnoreWritesEnd
,
150 StatAnnotateIgnoreSyncBegin
,
151 StatAnnotateIgnoreSyncEnd
,
152 StatAnnotatePublishMemoryRange
,
153 StatAnnotateUnpublishMemoryRange
,
154 StatAnnotateThreadName
,
155 Stat__tsan_mutex_create
,
156 Stat__tsan_mutex_destroy
,
157 Stat__tsan_mutex_pre_lock
,
158 Stat__tsan_mutex_post_lock
,
159 Stat__tsan_mutex_pre_unlock
,
160 Stat__tsan_mutex_post_unlock
,
161 Stat__tsan_mutex_pre_signal
,
162 Stat__tsan_mutex_post_signal
,
163 Stat__tsan_mutex_pre_divert
,
164 Stat__tsan_mutex_post_divert
,
166 // Internal mutex contentionz.
177 StatMtxDeadlockDetector
,
183 // This must be the last.
187 } // namespace __tsan
189 #endif // TSAN_STAT_H