#include "memprof_allocator.h"
#include "memprof_interceptors.h"
#include "memprof_interface_internal.h"
#include "memprof_internal.h"
#include "memprof_mapping.h"
#include "memprof_stack.h"
#include "memprof_stats.h"
#include "memprof_thread.h"
#include "sanitizer_common/sanitizer_atomic.h"
#include "sanitizer_common/sanitizer_flags.h"
#include "sanitizer_common/sanitizer_interface_internal.h"
#include "sanitizer_common/sanitizer_libc.h"
#include "sanitizer_common/sanitizer_symbolizer.h"
#include <time.h>
uptr __memprof_shadow_memory_dynamic_address;
SANITIZER_WEAK_ATTRIBUTE char __memprof_profile_filename[1];
SANITIZER_WEAK_ATTRIBUTE bool __memprof_histogram;
namespace __memprof {
static void MemprofDie() { … }
static void MemprofOnDeadlySignal(int signo, void *siginfo, void *context) { … }
static void CheckUnwind() { … }
int memprof_inited;
bool memprof_init_is_running;
int memprof_timestamp_inited;
long memprof_init_timestamp_s;
uptr kHighMemEnd;
#define MEMPROF_MEMORY_ACCESS_CALLBACK_BODY() …
#define MEMPROF_MEMORY_ACCESS_CALLBACK_BODY_HIST() …
#define MEMPROF_MEMORY_ACCESS_CALLBACK(type) …
#define MEMPROF_MEMORY_ACCESS_CALLBACK_HIST(type) …
MEMPROF_MEMORY_ACCESS_CALLBACK_HIST(load)
MEMPROF_MEMORY_ACCESS_CALLBACK_HIST(store)
MEMPROF_MEMORY_ACCESS_CALLBACK(load)
MEMPROF_MEMORY_ACCESS_CALLBACK(store)
static NOINLINE void force_interface_symbols() { … }
static void memprof_atexit() { … }
static void InitializeHighMemEnd() { … }
void PrintAddressSpaceLayout() { … }
static void MemprofInitInternal() { … }
void MemprofInitTime() { … }
void MemprofInitFromRtl() { … }
#if MEMPROF_DYNAMIC
class MemprofInitializer { … };
static MemprofInitializer memprof_initializer;
#endif
}
usingnamespace__memprof;
void __memprof_init() { … }
void __memprof_preinit() { … }
void __memprof_version_mismatch_check_v1() { … }
void __memprof_record_access(void const volatile *addr) { … }
void __memprof_record_access_hist(void const volatile *addr) { … }
void __memprof_record_access_range(void const volatile *addr, uptr size) { … }
void __memprof_record_access_range_hist(void const volatile *addr, uptr size) { … }
extern "C" SANITIZER_INTERFACE_ATTRIBUTE u16
__sanitizer_unaligned_load16(const uu16 *p) { … }
extern "C" SANITIZER_INTERFACE_ATTRIBUTE u32
__sanitizer_unaligned_load32(const uu32 *p) { … }
extern "C" SANITIZER_INTERFACE_ATTRIBUTE u64
__sanitizer_unaligned_load64(const uu64 *p) { … }
extern "C" SANITIZER_INTERFACE_ATTRIBUTE void
__sanitizer_unaligned_store16(uu16 *p, u16 x) { … }
extern "C" SANITIZER_INTERFACE_ATTRIBUTE void
__sanitizer_unaligned_store32(uu32 *p, u32 x) { … }
extern "C" SANITIZER_INTERFACE_ATTRIBUTE void
__sanitizer_unaligned_store64(uu64 *p, u64 x) { … }