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 18namespace __tsan { 19 20const char kSuppressionNone[] = "none"; 21const char kSuppressionRace[] = "race"; 22const char kSuppressionRaceTop[] = "race_top"; 23const char kSuppressionMutex[] = "mutex"; 24const char kSuppressionThread[] = "thread"; 25const char kSuppressionSignal[] = "signal"; 26const char kSuppressionLib[] = "called_from_lib"; 27const char kSuppressionDeadlock[] = "deadlock"; 28 29void InitializeSuppressions(); 30SuppressionContext *Suppressions(); 31void PrintMatchedSuppressions(); 32uptr IsSuppressed(ReportType typ, const ReportStack *stack, Suppression **sp); 33uptr IsSuppressed(ReportType typ, const ReportLocation *loc, Suppression **sp); 34 35} // namespace __tsan 36 37#endif // TSAN_SUPPRESSIONS_H 38