diff options
author | Martin Liska <mliska@suse.cz> | 2020-11-13 17:03:23 +0100 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2020-11-13 17:28:49 +0100 |
commit | 98f792ff538109c71d85ab2a61461cd090f3b9f3 (patch) | |
tree | 99bf74a06438f0328ade0591a0df6e6cf0572ddb /libsanitizer/include | |
parent | a514934a0565255276adaa4fbd4aa35579ec33c6 (diff) | |
download | gcc-98f792ff538109c71d85ab2a61461cd090f3b9f3.zip gcc-98f792ff538109c71d85ab2a61461cd090f3b9f3.tar.gz gcc-98f792ff538109c71d85ab2a61461cd090f3b9f3.tar.bz2 |
libsanitizer: merge from master.
Diffstat (limited to 'libsanitizer/include')
-rw-r--r-- | libsanitizer/include/sanitizer/memprof_interface.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/libsanitizer/include/sanitizer/memprof_interface.h b/libsanitizer/include/sanitizer/memprof_interface.h new file mode 100644 index 0000000..a721260 --- /dev/null +++ b/libsanitizer/include/sanitizer/memprof_interface.h @@ -0,0 +1,60 @@ +//===-- sanitizer/memprof_interface.h --------------------------*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +// +// This file is a part of MemProfiler (MemProf). +// +// Public interface header. +//===----------------------------------------------------------------------===// +#ifndef SANITIZER_MEMPROF_INTERFACE_H +#define SANITIZER_MEMPROF_INTERFACE_H + +#include <sanitizer/common_interface_defs.h> + +#ifdef __cplusplus +extern "C" { +#endif +/// Records access to a memory region (<c>[addr, addr+size)</c>). +/// +/// This memory must be previously allocated by your program. +/// +/// \param addr Start of memory region. +/// \param size Size of memory region. +void __memprof_record_access_range(void const volatile *addr, size_t size); + +/// Records access to a memory address <c><i>addr</i></c>. +/// +/// This memory must be previously allocated by your program. +/// +/// \param addr Accessed memory address +void __memprof_record_access(void const volatile *addr); + +/// User-provided callback on MemProf errors. +/// +/// You can provide a function that would be called immediately when MemProf +/// detects an error. This is useful in cases when MemProf detects an error but +/// your program crashes before the MemProf report is printed. +void __memprof_on_error(void); + +/// Prints accumulated statistics to <c>stderr</c> (useful for calling from the +/// debugger). +void __memprof_print_accumulated_stats(void); + +/// User-provided default option settings. +/// +/// You can provide your own implementation of this function to return a string +/// containing MemProf runtime options (for example, +/// <c>verbosity=1:print_stats=1</c>). +/// +/// \returns Default options string. +const char *__memprof_default_options(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif // SANITIZER_MEMPROF_INTERFACE_H |