summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2012-05-14 15:28:03 +0000
committerDmitry Vyukov <dvyukov@google.com>2012-05-14 15:28:03 +0000
commit665ce2a2f4763050b51e83d71208a8ede6091c3c (patch)
treec67acd0452f3711011727cb0530c5af72535b3a3
parentd004b99cc608f038794d534bb26a02e551da5c07 (diff)
downloadbcm5719-llvm-665ce2a2f4763050b51e83d71208a8ede6091c3c.tar.gz
bcm5719-llvm-665ce2a2f4763050b51e83d71208a8ede6091c3c.zip
tsan: enabled report suppression for signal-unsafe reports
llvm-svn: 156765
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_mman.cc2
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_rtl.h3
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc2
3 files changed, 4 insertions, 3 deletions
diff --git a/compiler-rt/lib/tsan/rtl/tsan_mman.cc b/compiler-rt/lib/tsan/rtl/tsan_mman.cc
index e24074eebc3..124d5cafed4 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_mman.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_mman.cc
@@ -25,7 +25,7 @@ static void SignalUnsafeCall(ThreadState *thr, uptr pc) {
stack.ObtainCurrent(thr, pc);
ScopedReport rep(ReportTypeSignalUnsafe);
rep.AddStack(&stack);
- OutputReport(rep);
+ OutputReport(rep, rep.GetReport()->stacks[0]);
}
void *user_alloc(ThreadState *thr, uptr pc, uptr sz) {
diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl.h b/compiler-rt/lib/tsan/rtl/tsan_rtl.h
index a5bdd524cb6..765ad00976f 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_rtl.h
+++ b/compiler-rt/lib/tsan/rtl/tsan_rtl.h
@@ -371,7 +371,8 @@ void InitializeDynamicAnnotations();
void Die() NORETURN;
void ReportRace(ThreadState *thr);
-bool OutputReport(const ScopedReport &srep, ReportStack *suppress_stack = 0);
+bool OutputReport(const ScopedReport &srep,
+ const ReportStack *suppress_stack = 0);
bool IsExpectedReport(uptr addr, uptr size);
#if defined(TSAN_DEBUG_OUTPUT) && TSAN_DEBUG_OUTPUT >= 1
diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc b/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc
index a5c541753ea..534e305525b 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_rtl_report.cc
@@ -273,7 +273,7 @@ static void AddRacyStacks(ThreadState *thr, const StackTrace (&traces)[2],
}
}
-bool OutputReport(const ScopedReport &srep, ReportStack *suppress_stack) {
+bool OutputReport(const ScopedReport &srep, const ReportStack *suppress_stack) {
const ReportDesc *rep = srep.GetReport();
bool suppressed = IsSuppressed(rep->typ, suppress_stack);
suppressed = OnReport(rep, suppressed);
OpenPOWER on IntegriCloud