1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- //===-- 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);
- /// Prints the memory profile to the current profile file.
- ///
- /// \returns 0 on success.
- int __memprof_profile_dump(void);
- #ifdef __cplusplus
- } // extern "C"
- #endif
- #endif // SANITIZER_MEMPROF_INTERFACE_H
|