Lines Matching defs:MST
1 //===- PGOInstrumentation.cpp - MST-based PGO Instrumentation -------------===//
46 // The MST implementation is in Class CFGMST (CFGMST.h).
488 /// This class implements the CFG edges for the Minimum Spanning Tree (MST)
511 /// This class stores the auxiliary information for each BB in the MST.
553 CFGMST<Edge, BBInfo> MST;
574 BBInfo &getBBInfo(const BasicBlock *BB) const { return MST.getBBInfo(BB); }
577 BBInfo *findBBInfo(const BasicBlock *BB) const { return MST.findBBInfo(BB); }
581 MST.dumpEdges(dbgs(), Twine("Dump Function ") + FuncName +
594 MST(F, InstrumentFuncEntry, BPI, BFI),
604 NumOfPGOBB += MST.bbInfoSize();
611 NumOfCSPGOBB += MST.bbInfoSize();
621 for (const auto &E : MST.allEdges()) {
668 updateJCH((uint64_t)MST.numEdges());
682 << ", Edges = " << MST.numEdges() << ", ICSites = "
768 EdgeList.reserve(MST.numEdges());
769 for (const auto &E : MST.allEdges())
826 MST.addEdge(SrcBB, InstrBB, 0);
828 Edge &NewEdge1 = MST.addEdge(InstrBB, DestBB, 0);
869 // Visit all edge and instrument the edges not in MST, and do value profiling.
877 // Split indirectbr critical edges here before computing the MST rather than
1203 /// Set up InEdges/OutEdges for all BBs in the MST.
1209 for (const auto &E : FuncInfo.MST.allEdges()) {
1263 // MST but not instrumented. Need to set the edge count value so that we can
1265 for (const auto &E : FuncInfo.MST.allEdges()) {
2131 // Split indirectbr critical edges here before computing the MST rather
2224 // inconsistent MST between prof-gen and prof-use.