2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
[official-gcc.git] / libsanitizer / tsan / tsan_suppressions.h
blobd44d8dd35297c89dfd9332da6036e1e75cb032e6
1 //===-- tsan_suppressions.h -------------------------------------*- C++ -*-===//
2 //
3 // This file is distributed under the University of Illinois Open Source
4 // License. See LICENSE.TXT for details.
5 //
6 //===----------------------------------------------------------------------===//
7 //
8 // This file is a part of ThreadSanitizer (TSan), a race detector.
9 //
10 //===----------------------------------------------------------------------===//
11 #ifndef TSAN_SUPPRESSIONS_H
12 #define TSAN_SUPPRESSIONS_H
14 #include "tsan_report.h"
16 namespace __tsan {
18 void InitializeSuppressions();
19 void FinalizeSuppressions();
20 uptr IsSuppressed(ReportType typ, const ReportStack *stack);
22 // Exposed for testing.
23 enum SuppressionType {
24 SuppressionRace,
25 SuppressionMutex,
26 SuppressionThread,
27 SuppressionSignal
30 struct Suppression {
31 Suppression *next;
32 SuppressionType type;
33 char *templ;
36 Suppression *SuppressionParse(Suppression *head, const char* supp);
37 bool SuppressionMatch(char *templ, const char *str);
39 } // namespace __tsan
41 #endif // TSAN_SUPPRESSIONS_H