1*3cab2bb3Spatrick //===-- sanitizer/coverage_interface.h --------------------------*- C++ -*-===// 2*3cab2bb3Spatrick // 3*3cab2bb3Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*3cab2bb3Spatrick // See https://llvm.org/LICENSE.txt for license information. 5*3cab2bb3Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*3cab2bb3Spatrick // 7*3cab2bb3Spatrick //===----------------------------------------------------------------------===// 8*3cab2bb3Spatrick // 9*3cab2bb3Spatrick // Public interface for sanitizer coverage. 10*3cab2bb3Spatrick //===----------------------------------------------------------------------===// 11*3cab2bb3Spatrick 12*3cab2bb3Spatrick #ifndef SANITIZER_COVERAG_INTERFACE_H 13*3cab2bb3Spatrick #define SANITIZER_COVERAG_INTERFACE_H 14*3cab2bb3Spatrick 15*3cab2bb3Spatrick #include <sanitizer/common_interface_defs.h> 16*3cab2bb3Spatrick 17*3cab2bb3Spatrick #ifdef __cplusplus 18*3cab2bb3Spatrick extern "C" { 19*3cab2bb3Spatrick #endif 20*3cab2bb3Spatrick 21*3cab2bb3Spatrick // Record and dump coverage info. 22*3cab2bb3Spatrick void __sanitizer_cov_dump(void); 23*3cab2bb3Spatrick 24*3cab2bb3Spatrick // Clear collected coverage info. 25*3cab2bb3Spatrick void __sanitizer_cov_reset(void); 26*3cab2bb3Spatrick 27*3cab2bb3Spatrick // Dump collected coverage info. Sorts pcs by module into individual .sancov 28*3cab2bb3Spatrick // files. 29*3cab2bb3Spatrick void __sanitizer_dump_coverage(const uintptr_t *pcs, uintptr_t len); 30*3cab2bb3Spatrick 31*3cab2bb3Spatrick #ifdef __cplusplus 32*3cab2bb3Spatrick } // extern "C" 33*3cab2bb3Spatrick #endif 34*3cab2bb3Spatrick 35*3cab2bb3Spatrick #endif // SANITIZER_COVERAG_INTERFACE_H 36