1 //===-- tsan_suppressions.h -------------------------------------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 // 9 // This file is a part of ThreadSanitizer (TSan), a race detector. 10 // 11 //===----------------------------------------------------------------------===// 12 #ifndef TSAN_SUPPRESSIONS_H 13 #define TSAN_SUPPRESSIONS_H 14 15 #include "sanitizer_common/sanitizer_suppressions.h" 16 #include "tsan_report.h" 17 18 namespace __tsan { 19 20 const char kSuppressionNone[] = "none"; 21 const char kSuppressionRace[] = "race"; 22 const char kSuppressionRaceTop[] = "race_top"; 23 const char kSuppressionMutex[] = "mutex"; 24 const char kSuppressionThread[] = "thread"; 25 const char kSuppressionSignal[] = "signal"; 26 const char kSuppressionLib[] = "called_from_lib"; 27 const char kSuppressionDeadlock[] = "deadlock"; 28 29 void InitializeSuppressions(); 30 SuppressionContext *Suppressions(); 31 void PrintMatchedSuppressions(); 32 uptr IsSuppressed(ReportType typ, const ReportStack *stack, Suppression **sp); 33 uptr IsSuppressed(ReportType typ, const ReportLocation *loc, Suppression **sp); 34 35 } // namespace __tsan 36 37 #endif // TSAN_SUPPRESSIONS_H 38