xref: /llvm-project/compiler-rt/include/sanitizer/coverage_interface.h (revision b799080f19c2c1a23d096289e6e03cdbd8b44895)
1cc0c773fSKostya Serebryany //===-- sanitizer/coverage_interface.h --------------------------*- C++ -*-===//
2cc0c773fSKostya Serebryany //
32946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
42946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information.
52946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6cc0c773fSKostya Serebryany //
7cc0c773fSKostya Serebryany //===----------------------------------------------------------------------===//
8cc0c773fSKostya Serebryany //
9cc0c773fSKostya Serebryany // Public interface for sanitizer coverage.
10cc0c773fSKostya Serebryany //===----------------------------------------------------------------------===//
11cc0c773fSKostya Serebryany 
12cc0c773fSKostya Serebryany #ifndef SANITIZER_COVERAG_INTERFACE_H
13cc0c773fSKostya Serebryany #define SANITIZER_COVERAG_INTERFACE_H
14cc0c773fSKostya Serebryany 
15cc0c773fSKostya Serebryany #include <sanitizer/common_interface_defs.h>
16cc0c773fSKostya Serebryany 
17cc0c773fSKostya Serebryany #ifdef __cplusplus
18cc0c773fSKostya Serebryany extern "C" {
19cc0c773fSKostya Serebryany #endif
20cc0c773fSKostya Serebryany 
21cc0c773fSKostya Serebryany // Record and dump coverage info.
22*b799080fSnicole mazzuca void SANITIZER_CDECL __sanitizer_cov_dump(void);
23aaa63700SMike Aizatsky 
2459b5e9c0SEvgeniy Stepanov // Clear collected coverage info.
25*b799080fSnicole mazzuca void SANITIZER_CDECL __sanitizer_cov_reset(void);
2659b5e9c0SEvgeniy Stepanov 
2759b5e9c0SEvgeniy Stepanov // Dump collected coverage info. Sorts pcs by module into individual .sancov
2859b5e9c0SEvgeniy Stepanov // files.
29*b799080fSnicole mazzuca void SANITIZER_CDECL __sanitizer_dump_coverage(const uintptr_t *pcs,
30*b799080fSnicole mazzuca                                                uintptr_t len);
31aaa63700SMike Aizatsky 
32cc0c773fSKostya Serebryany #ifdef __cplusplus
33cc0c773fSKostya Serebryany } // extern "C"
34cc0c773fSKostya Serebryany #endif
35cc0c773fSKostya Serebryany 
36cc0c773fSKostya Serebryany #endif // SANITIZER_COVERAG_INTERFACE_H
37