LLVM 22.0.0git
|
#include "llvm/ProfileData/InstrProf.h"
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) |
Static Public Member Functions | |
static bool | hasCSFlagInHash (uint64_t FuncHash) |
static void | setCSFlagInHash (uint64_t &FuncHash) |
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 const int | CS_FLAG_IN_FUNC_HASH = 60 |
Additional Inherited Members | |
Public Types inherited from llvm::InstrProfRecord | |
enum | CountPseudoKind { NotPseudo = 0 , PseudoHot , PseudoWarm } |
enum | PseudoCountVal { HotFunctionVal = -1 , WarmFunctionVal = -2 } |
Definition at line 1057 of file InstrProf.h.
|
default |
|
inline |
Definition at line 1065 of file InstrProf.h.
References llvm::InstrProfRecord::Counts, Hash, llvm::InstrProfRecord::InstrProfRecord(), llvm::move(), and Name.
|
inline |
Definition at line 1068 of file InstrProf.h.
References llvm::InstrProfRecord::BitmapBytes, llvm::InstrProfRecord::Counts, Hash, llvm::InstrProfRecord::InstrProfRecord(), llvm::move(), and Name.
Definition at line 1074 of file InstrProf.h.
References CS_FLAG_IN_FUNC_HASH, and llvm::FuncHash.
Referenced by llvm::InstrProfReader::accumulateCounts(), llvm::InstrProfRecordWriterTrait::EmitData(), and llvm::IndexedInstrProfReader::getInstrProfRecord().
|
inlinestatic |
Definition at line 1077 of file InstrProf.h.
References CS_FLAG_IN_FUNC_HASH, and llvm::FuncHash.
|
static |
Definition at line 1062 of file InstrProf.h.
Referenced by hasCSFlagInHash(), and setCSFlagInHash().
uint64_t llvm::NamedInstrProfRecord::Hash |
Definition at line 1059 of file InstrProf.h.
Referenced by NamedInstrProfRecord(), and NamedInstrProfRecord().
StringRef llvm::NamedInstrProfRecord::Name |
Definition at line 1058 of file InstrProf.h.
Referenced by NamedInstrProfRecord(), and NamedInstrProfRecord().