diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2011-12-05 23:07:05 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2011-12-05 23:07:05 +0000 |
commit | aa21e417f24fe9be4fd8db366766fb262c96703e (patch) | |
tree | ee3b73e1026a1a64de7d32b502ea8106c472f0b1 /lib/Support | |
parent | a4b6fd5be08ad6a1cb2d07aba2814aaa2a626c8d (diff) | |
download | external_llvm-aa21e417f24fe9be4fd8db366766fb262c96703e.zip external_llvm-aa21e417f24fe9be4fd8db366766fb262c96703e.tar.gz external_llvm-aa21e417f24fe9be4fd8db366766fb262c96703e.tar.bz2 |
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
Diffstat (limited to 'lib/Support')
-rw-r--r-- | lib/Support/Statistic.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Support/Statistic.cpp b/lib/Support/Statistic.cpp index 04a44a0..d8a6ad3 100644 --- a/lib/Support/Statistic.cpp +++ b/lib/Support/Statistic.cpp @@ -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(); } } |