LLVM
17.0.0git
|
Classes | |
struct | AllocationInfo |
class | CallStack |
Helper class to iterate through stack ids in both metadata (memprof MIB and callsite) and the corresponding ThinLTO summary data structures (CallsiteInfo and MIBInfo). More... | |
class | CallStackTrie |
Class to build a trie of call stack contexts for a particular profiled allocation call, along with their associated allocation types. More... | |
struct | Frame |
class | FrameLookupTrait |
class | FrameWriterTrait |
struct | IndexedAllocationInfo |
struct | IndexedMemProfRecord |
struct | MemProfRecord |
struct | PortableMemInfoBlock |
class | RawMemProfReader |
class | RecordLookupTrait |
class | RecordWriterTrait |
Typedefs | |
using | MemProfSchema = llvm::SmallVector< Meta, static_cast< int >(Meta::Size)> |
using | FrameId = uint64_t |
using | CallStackMap = llvm::DenseMap< uint64_t, llvm::SmallVector< uint64_t > > |
Enumerations | |
enum | Meta : uint64_t { Meta::Start = 0, Meta::MIBEntryDef, Meta::Size } |
Functions | |
AllocationType | getAllocType (uint64_t MaxAccessCount, uint64_t MinSize, uint64_t MinLifetime) |
Return the allocation type for a given set of memory profile values. More... | |
MDNode * | buildCallstackMetadata (ArrayRef< uint64_t > CallStack, LLVMContext &Ctx) |
Build callstack metadata from the provided list of call stack ids. More... | |
MDNode * | getMIBStackNode (const MDNode *MIB) |
Returns the stack node from an MIB metadata node. More... | |
AllocationType | getMIBAllocType (const MDNode *MIB) |
Returns the allocation type from an MIB metadata node. More... | |
Expected< MemProfSchema > | readMemProfSchema (const unsigned char *&Buffer) |
using llvm::memprof::CallStackMap = typedef llvm::DenseMap<uint64_t, llvm::SmallVector<uint64_t> > |
Definition at line 36 of file RawMemProfReader.h.
using llvm::memprof::FrameId = typedef uint64_t |
using llvm::memprof::MemProfSchema = typedef llvm::SmallVector<Meta, static_cast<int>(Meta::Size)> |
|
strong |
MDNode * llvm::memprof::buildCallstackMetadata | ( | ArrayRef< uint64_t > | CallStack, |
LLVMContext & | Ctx | ||
) |
Build callstack metadata from the provided list of call stack ids.
Returns the resulting metadata node.
Definition at line 44 of file MemoryProfileInfo.cpp.
References llvm::ConstantInt::get(), llvm::ValueAsMetadata::get(), llvm::MDNode::get(), and llvm::Type::getInt64Ty().
Referenced by addCallsiteMetadata(), and createMIBNode().
AllocationType llvm::memprof::getAllocType | ( | uint64_t | MaxAccessCount, |
uint64_t | MinSize, | ||
uint64_t | MinLifetime | ||
) |
Return the allocation type for a given set of memory profile values.
Definition at line 34 of file MemoryProfileInfo.cpp.
References llvm::Cold, MemProfAccessesPerByteColdThreshold, MemProfMinLifetimeColdThreshold, and llvm::NotCold.
Referenced by addCallStack().
AllocationType llvm::memprof::getMIBAllocType | ( | const MDNode * | MIB | ) |
Returns the allocation type from an MIB metadata node.
Definition at line 61 of file MemoryProfileInfo.cpp.
References assert(), llvm::Cold, llvm::MDNode::getNumOperands(), llvm::MDNode::getOperand(), and llvm::NotCold.
Referenced by llvm::memprof::CallStackTrie::addCallStack(), and computeFunctionSummary().
Returns the stack node from an MIB metadata node.
Definition at line 55 of file MemoryProfileInfo.cpp.
References assert(), llvm::MDNode::getNumOperands(), and llvm::MDNode::getOperand().
Referenced by llvm::memprof::CallStackTrie::addCallStack(), computeFunctionSummary(), and propagateMemProfHelper().
Expected< MemProfSchema > llvm::memprof::readMemProfSchema | ( | const unsigned char *& | Buffer | ) |
Definition at line 84 of file MemProf.cpp.
References I, llvm::malformed, Ptr, Size, and support().
Referenced by llvm::IndexedInstrProfReader::readHeader().