LLVM: llvm::NamedInstrProfRecord Struct Reference (original) (raw)

#include "[llvm/ProfileData/InstrProf.h](InstrProf%5F8h%5Fsource.html)"

Public Member Functions
NamedInstrProfRecord ()=default
NamedInstrProfRecord (StringRef Name, uint64_t Hash, std::vector< uint64_t > Counts)
NamedInstrProfRecord (StringRef Name, uint64_t Hash, std::vector< uint64_t > Counts, std::vector< uint8_t > BitmapBytes)
Public Member Functions inherited from llvm::InstrProfRecord
InstrProfRecord ()=default
InstrProfRecord (std::vector< uint64_t > Counts)
InstrProfRecord (std::vector< uint64_t > Counts, std::vector< uint8_t > BitmapBytes)
InstrProfRecord (InstrProfRecord &&)=default
InstrProfRecord (const InstrProfRecord &RHS)
InstrProfRecord & operator= (InstrProfRecord &&)=default
InstrProfRecord & operator= (const InstrProfRecord &RHS)
uint32_t getNumValueKinds () const
Return the number of value profile kinds with non-zero number of profile sites.
uint32_t getNumValueSites (uint32_t ValueKind) const
Return the number of instrumented sites for ValueKind.
uint32_t getNumValueData (uint32_t ValueKind) const
Return the total number of ValueData for ValueKind.
ArrayRef< InstrProfValueData > getValueArrayForSite (uint32_t ValueKind, uint32_t Site) const
Return the array of profiled values at Site.
void reserveSites (uint32_t ValueKind, uint32_t NumValueSites)
Reserve space for NumValueSites sites.
LLVM_ABI void addValueData (uint32_t ValueKind, uint32_t Site, ArrayRef< InstrProfValueData > VData, InstrProfSymtab *SymTab)
Add ValueData for ValueKind at value Site.
LLVM_ABI void merge (InstrProfRecord &Other, uint64_t Weight, function_ref< void(instrprof_error)> Warn)
Merge the counts in Other into this one.
LLVM_ABI void scale (uint64_t N, uint64_t D, function_ref< void(instrprof_error)> Warn)
Scale up profile counts (including value profile data) by a factor of (N / D).
void sortValueData ()
Sort value profile data (per site) by count.
void Clear ()
Clear value data entries and edge counters.
void clearValueData ()
Clear value data entries.
LLVM_ABI void accumulateCounts (CountSumOrPercent &Sum) const
Compute the sums of all counts and store in Sum.
LLVM_ABI void overlap (InstrProfRecord &Other, OverlapStats &Overlap, OverlapStats &FuncLevelOverlap, uint64_t ValueCutoff)
Compute the overlap b/w this IntrprofRecord and Other.
LLVM_ABI void overlapValueProfData (uint32_t ValueKind, InstrProfRecord &Src, OverlapStats &Overlap, OverlapStats &FuncLevelOverlap)
Compute the overlap of value profile counts.
CountPseudoKind getCountPseudoKind () const
void setPseudoCount (CountPseudoKind Kind)
Public Attributes
StringRef Name
uint64_t Hash
Public Attributes inherited from llvm::InstrProfRecord
std::vector< uint64_t > Counts
std::vector< uint8_t > BitmapBytes
Static Public Attributes
static constexpr uint64_t FUNC_HASH_MASK = 0x0FFF'FFFF'FFFF'FFFF
static constexpr unsigned CS_FLAG_IN_FUNC_HASH = 60

Definition at line 1056 of file InstrProf.h.

llvm::NamedInstrProfRecord::NamedInstrProfRecord ( ) default

NamedInstrProfRecord() [2/3]

NamedInstrProfRecord() [3/3]

hasCSFlagInHash()

bool llvm::NamedInstrProfRecord::hasCSFlagInHash ( uint64_t FuncHash) inlinestatic

setCSFlagInHash()

void llvm::NamedInstrProfRecord::setCSFlagInHash ( uint64_t & FuncHash) inlinestatic

CS_FLAG_IN_FUNC_HASH

unsigned llvm::NamedInstrProfRecord::CS_FLAG_IN_FUNC_HASH = 60 staticconstexpr

FUNC_HASH_MASK

uint64_t llvm::NamedInstrProfRecord::FUNC_HASH_MASK = 0x0FFF'FFFF'FFFF'FFFF staticconstexpr

Hash

uint64_t llvm::NamedInstrProfRecord::Hash

Name


The documentation for this struct was generated from the following file: