Silence tsan false-positives (tsan can't track things which are only safe due to

memory fences) in statistics registration, which works the same way that
ManagedStatic registration does.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145869 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nick Lewycky
2011-12-05 23:07:05 +00:00
parent a4b6fd5be0
commit aa21e417f2
2 changed files with 5 additions and 0 deletions
+3
View File
@@ -73,9 +73,12 @@ void Statistic::RegisterStatistic() {
if (Enabled)
StatInfo->addStatistic(this);
TsanHappensBefore(this);
sys::MemoryFence();
// Remember we have been registered.
TsanIgnoreWritesBegin();
Initialized = true;
TsanIgnoreWritesEnd();
}
}