LLVM 20.0.0git
|
Public interface to the memory profiler pass for instrumenting code to profile memory accesses. More...
#include "llvm/Transforms/Instrumentation/MemProfiler.h"
Public Member Functions | |
MemProfilerPass () | |
PreservedAnalyses | run (Function &F, FunctionAnalysisManager &AM) |
Public Member Functions inherited from llvm::PassInfoMixin< MemProfilerPass > | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Static Public Member Functions | |
static bool | isRequired () |
Static Public Member Functions inherited from llvm::PassInfoMixin< MemProfilerPass > | |
static StringRef | name () |
Gets the name of the pass we are mixed into. | |
Public interface to the memory profiler pass for instrumenting code to profile memory accesses.
The profiler itself is a function pass that works by inserting various calls to the MemProfiler runtime library functions. The runtime library essentially replaces malloc() and free() with custom implementations that record data about the allocations.
Definition at line 33 of file MemProfiler.h.
|
explicitdefault |
|
inlinestatic |
Definition at line 37 of file MemProfiler.h.
PreservedAnalyses MemProfilerPass::run | ( | Function & | F, |
FunctionAnalysisManager & | AM | ||
) |
Definition at line 281 of file MemProfiler.cpp.
References llvm::PreservedAnalyses::all(), assert(), ClHistogram, ClMappingGranularity, DefaultMemGranularity, F, and llvm::PreservedAnalyses::none().