LLVM 20.0.0git
|
#include "llvm/ProfileData/InstrProf.h"
Public Member Functions | |
InstrProfValueSiteRecord ()=default | |
InstrProfValueSiteRecord (std::vector< InstrProfValueData > &&VD) | |
void | sortByTargetValues () |
Sort ValueData ascending by Value. | |
void | sortByCount () |
Sort ValueData Descending by Count. | |
void | merge (InstrProfValueSiteRecord &Input, uint64_t Weight, function_ref< void(instrprof_error)> Warn) |
Merge data from another InstrProfValueSiteRecord Optionally scale merged counts by Weight . | |
void | scale (uint64_t N, uint64_t D, function_ref< void(instrprof_error)> Warn) |
Scale up value profile data counts by N (Numerator) / D (Denominator). | |
void | overlap (InstrProfValueSiteRecord &Input, uint32_t ValueKind, OverlapStats &Overlap, OverlapStats &FuncLevelOverlap) |
Compute the overlap b/w this record and Input record. | |
Public Attributes | |
std::vector< InstrProfValueData > | ValueData |
Value profiling data pairs at a given value site. | |
Definition at line 805 of file InstrProf.h.
|
default |
|
inline |
Definition at line 810 of file InstrProf.h.
void llvm::InstrProfValueSiteRecord::merge | ( | InstrProfValueSiteRecord & | Input, |
uint64_t | Weight, | ||
function_ref< void(instrprof_error)> | Warn | ||
) |
Merge data from another InstrProfValueSiteRecord Optionally scale merged counts by Weight
.
Definition at line 864 of file InstrProf.cpp.
References llvm::counter_overflow, I, llvm::SaturatingMultiplyAdd(), sortByTargetValues(), and ValueData.
void llvm::InstrProfValueSiteRecord::overlap | ( | InstrProfValueSiteRecord & | Input, |
uint32_t | ValueKind, | ||
OverlapStats & | Overlap, | ||
OverlapStats & | FuncLevelOverlap | ||
) |
Compute the overlap b/w this record and Input record.
Definition at line 764 of file InstrProf.cpp.
References llvm::OverlapStats::Base, I, llvm::OverlapStats::Overlap, llvm::OverlapStats::score(), sortByTargetValues(), llvm::OverlapStats::Test, llvm::CountSumOrPercent::ValueCounts, and ValueData.
void llvm::InstrProfValueSiteRecord::scale | ( | uint64_t | N, |
uint64_t | D, | ||
function_ref< void(instrprof_error)> | Warn | ||
) |
Scale up value profile data counts by N (Numerator) / D (Denominator).
Definition at line 893 of file InstrProf.cpp.
References llvm::counter_overflow, D, I, N, llvm::SaturatingMultiply(), and ValueData.
|
inline |
Sort ValueData Descending by Count.
Definition at line 1055 of file InstrProf.h.
References llvm::stable_sort(), and ValueData.
|
inline |
Sort ValueData ascending by Value.
Definition at line 814 of file InstrProf.h.
References llvm::sort(), and ValueData.
std::vector<InstrProfValueData> llvm::InstrProfValueSiteRecord::ValueData |
Value profiling data pairs at a given value site.
Definition at line 807 of file InstrProf.h.
Referenced by merge(), overlap(), scale(), sortByCount(), and sortByTargetValues().