13 #ifndef LLVM_TRANSFORMS_UTILS_IMPORTEDFUNCTIONSINLININGSTATISTICS_H 14 #define LLVM_TRANSFORMS_UTILS_IMPORTEDFUNCTIONSINLININGSTATISTICS_H 48 struct InlineGraphNode {
50 InlineGraphNode() =
default;
51 InlineGraphNode(InlineGraphNode &&) =
default;
52 InlineGraphNode &operator=(InlineGraphNode &&) =
default;
56 int32_t NumberOfInlines = 0;
59 int32_t NumberOfRealInlines = 0;
60 bool Imported =
false;
76 void dump(
bool Verbose);
80 InlineGraphNode &createInlineGraphNode(
const Function &);
81 void calculateRealInlines();
82 void dfs(InlineGraphNode &GraphNode);
87 std::vector<const NodesMapTy::MapEntryTy*>;
90 SortedNodesTy getSortedNodes();
99 std::vector<StringRef> NonImportedCallers;
100 int AllFunctions = 0;
101 int ImportedFunctions = 0;
107 #endif // LLVM_TRANSFORMS_UTILS_IMPORTEDFUNCTIONSINLININGSTATISTICS_H void setModuleInfo(const Module &M)
Set information like AllFunctions, ImportedFunctions, ModuleName.
This class represents lattice values for constants.
A Module instance is used to store all the information related to an LLVM module. ...
void recordInline(const Function &Caller, const Function &Callee)
Record inline of.
Calculate and dump ThinLTO specific inliner stats.
amdgpu Simplify well known AMD library false Value * Callee
ImportedFunctionsInliningStatistics()=default
void dump(bool Verbose)
Dump stats computed with InlinerStatistics class.
StringRef - Represent a constant reference to a string, i.e.