summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2013-03-19 10:24:01 +0000
committerDmitry Vyukov <dvyukov@google.com>2013-03-19 10:24:01 +0000
commit723e24f768f5b32c38283ee8d2c4219267af2b4d (patch)
tree139fa28b33c6598a10ea733ba40affb26dee5463
parent7fac284c9d3aab4c28b422315731b12a5af9fc4e (diff)
downloadcompiler-rt-723e24f768f5b32c38283ee8d2c4219267af2b4d.tar.gz
compiler-rt-723e24f768f5b32c38283ee8d2c4219267af2b4d.tar.bz2
compiler-rt-723e24f768f5b32c38283ee8d2c4219267af2b4d.tar.xz
tsan: symbolizer "flush caches" support
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177389 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/tsan/rtl/tsan_symbolize.cc7
-rw-r--r--lib/tsan/rtl/tsan_symbolize.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/tsan/rtl/tsan_symbolize.cc b/lib/tsan/rtl/tsan_symbolize.cc
index a58b9583..12226064 100644
--- a/lib/tsan/rtl/tsan_symbolize.cc
+++ b/lib/tsan/rtl/tsan_symbolize.cc
@@ -116,4 +116,11 @@ ReportLocation *SymbolizeData(uptr addr) {
return ent;
}
+void SymbolizeFlush() {
+ if (!IsSymbolizerAvailable())
+ return;
+ ScopedInSymbolizer in_symbolizer;
+ __sanitizer::FlushSymbolizer();
+}
+
} // namespace __tsan
diff --git a/lib/tsan/rtl/tsan_symbolize.h b/lib/tsan/rtl/tsan_symbolize.h
index 29193043..7bc6123d 100644
--- a/lib/tsan/rtl/tsan_symbolize.h
+++ b/lib/tsan/rtl/tsan_symbolize.h
@@ -20,6 +20,7 @@ namespace __tsan {
ReportStack *SymbolizeCode(uptr addr);
ReportLocation *SymbolizeData(uptr addr);
+void SymbolizeFlush();
ReportStack *SymbolizeCodeAddr2Line(uptr addr);