1 //===-- sanitizer_allocator_interface.h ------------------------- C++ -----===// 2 // 3 // This file is distributed under the University of Illinois Open Source 4 // License. See LICENSE.TXT for details. 5 // 6 //===----------------------------------------------------------------------===// 7 // 8 // Re-declaration of functions from public sanitizer allocator interface. 9 // 10 //===----------------------------------------------------------------------===// 11 12 #ifndef SANITIZER_ALLOCATOR_INTERFACE_H 13 #define SANITIZER_ALLOCATOR_INTERFACE_H 14 15 #include "sanitizer_internal_defs.h" 16 17 using __sanitizer::uptr; 18 19 extern "C" { 20 SANITIZER_INTERFACE_ATTRIBUTE 21 uptr __sanitizer_get_estimated_allocated_size(uptr size); 22 SANITIZER_INTERFACE_ATTRIBUTE int __sanitizer_get_ownership(const void *p); 23 SANITIZER_INTERFACE_ATTRIBUTE uptr 24 __sanitizer_get_allocated_size(const void *p); 25 SANITIZER_INTERFACE_ATTRIBUTE uptr __sanitizer_get_current_allocated_bytes(); 26 SANITIZER_INTERFACE_ATTRIBUTE uptr __sanitizer_get_heap_size(); 27 SANITIZER_INTERFACE_ATTRIBUTE uptr __sanitizer_get_free_bytes(); 28 SANITIZER_INTERFACE_ATTRIBUTE uptr __sanitizer_get_unmapped_bytes(); 29 30 SANITIZER_INTERFACE_ATTRIBUTE int __sanitizer_install_malloc_and_free_hooks( 31 void (*malloc_hook)(const void *, uptr), 32 void (*free_hook)(const void *)); 33 34 SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE 35 void __sanitizer_malloc_hook(void *ptr, uptr size); 36 SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE 37 void __sanitizer_free_hook(void *ptr); 38 39 SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void 40 __sanitizer_print_memory_profile(uptr top_percent, uptr max_number_of_contexts); 41 } // extern "C" 42 43 #endif // SANITIZER_ALLOCATOR_INTERFACE_H 44