Go to the documentation of this file.
15 #ifndef LLVM_TRANSFORMS_UTILS_SAMPLEPROFILELOADERBASEUTIL_H
16 #define LLVM_TRANSFORMS_UTILS_SAMPLEPROFILELOADERBASEUTIL_H
23 using namespace sampleprof;
25 class ProfileSummaryInfo;
33 namespace sampleprofutil {
39 unsigned computeCoverage(
unsigned Used,
unsigned Total)
const;
49 SampleCoverage.clear();
55 using BodySampleCoverageMap = std::map<LineLocation, unsigned>;
56 using FunctionSamplesCoverageMap =
68 FunctionSamplesCoverageMap SampleCoverage;
85 bool ProfAccForSymsInList =
false;
90 bool ProfAccForSymsInList);
98 #endif // LLVM_TRANSFORMS_UTILS_SAMPLEPROFILELOADERBASEUTIL_H
This is an optimization pass for GlobalISel generic memory operations.
void setProfAccForSymsInList(bool V)
void createFSDiscriminatorVariable(Module *M)
Create a global variable to flag FSDiscriminators are used.
uint64_t getTotalUsedSamples() const
Analysis providing profile information.
Representation of the samples collected for a function.
A Module instance is used to store all the information related to an LLVM module.
cl::opt< unsigned > SampleProfileSampleCoverage
Machine Check Debug Module
bool callsiteIsHot(const FunctionSamples *CallsiteFS, ProfileSummaryInfo *PSI, bool ProfAccForSymsInList)
Return true if the given callsite is hot wrt to hot cutoff threshold.
cl::opt< unsigned > SampleProfileRecordCoverage
cl::opt< unsigned > SampleProfileMaxPropagateIterations
cl::opt< bool > NoWarnSampleUnused