• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===-- tsan_interface_ann.h ------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file is a part of ThreadSanitizer (TSan), a race detector.
11 //
12 // Interface for dynamic annotations.
13 //===----------------------------------------------------------------------===//
14 #ifndef TSAN_INTERFACE_ANN_H
15 #define TSAN_INTERFACE_ANN_H
16 
17 #include <sanitizer_common/sanitizer_internal_defs.h>
18 
19 // This header should NOT include any other headers.
20 // All functions in this header are extern "C" and start with __tsan_.
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 SANITIZER_INTERFACE_ATTRIBUTE void __tsan_acquire(void *addr);
27 SANITIZER_INTERFACE_ATTRIBUTE void __tsan_release(void *addr);
28 
29 #ifdef __cplusplus
30 }  // extern "C"
31 #endif
32 
33 #endif  // TSAN_INTERFACE_ANN_H
34