A class that holds the constants that represent static data and their profile information and provides methods to operate on them.
Declared in <llvm/Analysis/StaticDataProfileInfo.h>
class StaticDataProfileInfo;
| Name | Description |
|---|---|
StaticDataHotness | Use signed enums for enum value comparison, and make 'LukewarmOrUnknown' as 0 so any accidentally uninitialized value will default to unknown. |
| Name | Description |
|---|---|
StaticDataProfileInfo [constructor] | Construct StaticDataProfileInfo with data-access profile combining EnableDataAccessProf. |
addConstantProfileCount | Add or clear the profile count for constant C. |
getConstantHotnessUsingProfileCount | Return the hotness of the constant C based on its profile count Count. |
getConstantProfileCount | If C has a count, return it. Otherwise, return std::nullopt. |
getConstantSectionPrefix | Return a section prefix for constant C based on profile data. |
getSectionHotnessUsingDataAccessProfile | Return the hotness based on section prefix SectionPrefix. |
hotnessToStr | Return the string representation of the hotness enum Hotness. |
| Name | Description |
|---|---|
ConstantProfileCounts | Maps tracked constants to their accumulated profile counts. |
ConstantWithoutCounts | Keeps track of the constants that are seen at least once without profile counts. |
EnableDataAccessProf | When true, combine data-access profile hotness with PGO counts for section prefixes. |