xref: /freebsd-src/contrib/llvm-project/compiler-rt/lib/memprof/memprof_rawprofile.h (revision 06c3fb2749bda94cb5201f81ffdb8fa6c3161b2e)
1349cc55cSDimitry Andric #ifndef MEMPROF_RAWPROFILE_H_
2349cc55cSDimitry Andric #define MEMPROF_RAWPROFILE_H_
3349cc55cSDimitry Andric 
4349cc55cSDimitry Andric #include "memprof_mibmap.h"
5*06c3fb27SDimitry Andric #include "sanitizer_common/sanitizer_array_ref.h"
6*06c3fb27SDimitry Andric #include "sanitizer_common/sanitizer_common.h"
7349cc55cSDimitry Andric 
8349cc55cSDimitry Andric namespace __memprof {
94824e7fdSDimitry Andric // Serialize the in-memory representation of the memprof profile to the raw
104824e7fdSDimitry Andric // binary format. The format itself is documented memprof_rawprofile.cpp.
11*06c3fb27SDimitry Andric u64 SerializeToRawProfile(MIBMapTy &BlockCache, ArrayRef<LoadedModule> Modules,
12349cc55cSDimitry Andric                           char *&Buffer);
13349cc55cSDimitry Andric } // namespace __memprof
14349cc55cSDimitry Andric 
15349cc55cSDimitry Andric #endif // MEMPROF_RAWPROFILE_H_
16