xref: /netbsd-src/sys/external/bsd/compiler_rt/dist/include/sanitizer/coverage_interface.h (revision a7c257b03e4462df2b1020128fb82716512d7856)
1*a7c257b0Skamil //===-- sanitizer/coverage_interface.h --------------------------*- C++ -*-===//
2*a7c257b0Skamil //
3*a7c257b0Skamil //                     The LLVM Compiler Infrastructure
4*a7c257b0Skamil //
5*a7c257b0Skamil // This file is distributed under the University of Illinois Open Source
6*a7c257b0Skamil // License. See LICENSE.TXT for details.
7*a7c257b0Skamil //
8*a7c257b0Skamil //===----------------------------------------------------------------------===//
9*a7c257b0Skamil //
10*a7c257b0Skamil // Public interface for sanitizer coverage.
11*a7c257b0Skamil //===----------------------------------------------------------------------===//
12*a7c257b0Skamil 
13*a7c257b0Skamil #ifndef SANITIZER_COVERAG_INTERFACE_H
14*a7c257b0Skamil #define SANITIZER_COVERAG_INTERFACE_H
15*a7c257b0Skamil 
16*a7c257b0Skamil #include <sanitizer/common_interface_defs.h>
17*a7c257b0Skamil 
18*a7c257b0Skamil #ifdef __cplusplus
19*a7c257b0Skamil extern "C" {
20*a7c257b0Skamil #endif
21*a7c257b0Skamil 
22*a7c257b0Skamil   // Record and dump coverage info.
23*a7c257b0Skamil   void __sanitizer_cov_dump(void);
24*a7c257b0Skamil 
25*a7c257b0Skamil   // Clear collected coverage info.
26*a7c257b0Skamil   void __sanitizer_cov_reset(void);
27*a7c257b0Skamil 
28*a7c257b0Skamil   // Dump collected coverage info. Sorts pcs by module into individual .sancov
29*a7c257b0Skamil   // files.
30*a7c257b0Skamil   void __sanitizer_dump_coverage(const uintptr_t *pcs, uintptr_t len);
31*a7c257b0Skamil 
32*a7c257b0Skamil #ifdef __cplusplus
33*a7c257b0Skamil }  // extern "C"
34*a7c257b0Skamil #endif
35*a7c257b0Skamil 
36*a7c257b0Skamil #endif  // SANITIZER_COVERAG_INTERFACE_H
37