aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/ADT
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2011-12-05 23:07:05 +0000
committerNick Lewycky <nicholas@mxc.ca>2011-12-05 23:07:05 +0000
commitaa21e417f24fe9be4fd8db366766fb262c96703e (patch)
treeee3b73e1026a1a64de7d32b502ea8106c472f0b1 /include/llvm/ADT
parenta4b6fd5be08ad6a1cb2d07aba2814aaa2a626c8d (diff)
downloadexternal_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 'include/llvm/ADT')
-rw-r--r--include/llvm/ADT/Statistic.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/llvm/ADT/Statistic.h b/include/llvm/ADT/Statistic.h
index b8a1a2f..b54d10b 100644
--- a/include/llvm/ADT/Statistic.h
+++ b/include/llvm/ADT/Statistic.h
@@ -27,6 +27,7 @@
#define LLVM_ADT_STATISTIC_H
#include "llvm/Support/Atomic.h"
+#include "llvm/Support/Valgrind.h"
namespace llvm {
class raw_ostream;
@@ -110,6 +111,7 @@ protected:
bool tmp = Initialized;
sys::MemoryFence();
if (!tmp) RegisterStatistic();
+ TsanHappensAfter(this);
return *this;
}
void RegisterStatistic();