tsan: enabled report suppression for signal-unsafe reports

llvm-svn: 156765
This commit is contained in:
Dmitry Vyukov 2012-05-14 15:28:03 +00:00
parent d004b99cc6
commit 665ce2a2f4
3 changed files with 4 additions and 3 deletions

View File

@ -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) {

View File

@ -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

View File

@ -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);