Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
MemoryProfileInfo.h File Reference
#include "llvm/IR/Metadata.h"
#include "llvm/IR/ModuleSummaryIndex.h"
#include "llvm/Support/Compiler.h"
#include <map>

Go to the source code of this file.

Classes

class  llvm::memprof::CallStackTrie
 Class to build a trie of call stack contexts for a particular profiled allocation call, along with their associated allocation types. More...
class  llvm::memprof::CallStack< NodeT, IteratorT >
 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...
struct  llvm::memprof::CallStack< NodeT, IteratorT >::CallStackIterator

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::memprof

Functions

LLVM_ABI bool llvm::memprof::metadataIncludesAllContextSizeInfo ()
 Whether the alloc memeprof metadata will include context size info for all MIBs.
LLVM_ABI bool llvm::memprof::metadataMayIncludeContextSizeInfo ()
 Whether the alloc memprof metadata may include context size info for some MIBs (but possibly not all).
LLVM_ABI bool llvm::memprof::recordContextSizeInfoForAnalysis ()
 Whether we need to record the context size info in the alloc trie used to build metadata.
LLVM_ABI MDNodellvm::memprof::buildCallstackMetadata (ArrayRef< uint64_t > CallStack, LLVMContext &Ctx)
 Build callstack metadata from the provided list of call stack ids.
LLVM_ABI MDNodellvm::memprof::buildContextSizeMetadata (ArrayRef< ContextTotalSize > ContextSizeInfo, LLVMContext &Ctx)
 Build metadata from the provided list of full stack id and profiled size, to use when reporting of hinted sizes is enabled.
LLVM_ABI MDNodellvm::memprof::getMIBStackNode (const MDNode *MIB)
 Returns the stack node from an MIB metadata node.
LLVM_ABI AllocationType llvm::memprof::getMIBAllocType (const MDNode *MIB)
 Returns the allocation type from an MIB metadata node.
LLVM_ABI std::string llvm::memprof::getAllocTypeAttributeString (AllocationType Type)
 Returns the string to use in attributes with the given type.
LLVM_ABI bool llvm::memprof::hasSingleAllocType (uint8_t AllocTypes)
 True if the AllocTypes bitmask contains just a single type.
LLVM_ABI void llvm::memprof::removeAnyExistingAmbiguousAttribute (CallBase *CB)
 Removes any existing "ambiguous" memprof attribute.
LLVM_ABI void llvm::memprof::addAmbiguousAttribute (CallBase *CB)
 Adds an "ambiguous" memprof attribute to call with a matched allocation profile but that we haven't yet been able to disambiguate.