/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | CallGraphUpdater.h | 49 LazyCallGraph::SCC *SCC = nullptr; member in class:llvm::CallGraphUpdater 62 void initialize(CallGraph &CG, CallGraphSCC &SCC) { argument 64 this->CGSCC = &SCC; 66 void initialize(LazyCallGraph &LCG, LazyCallGraph::SCC &SCC, argument 69 this->SCC = &SCC; 73 &AM.getResult<FunctionAnalysisManagerCGSCCProxy>(SCC, LCG).getManager(); 92 /// Replace \p OldFn in the call graph (and SCC) wit [all...] |
/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Coroutines/ |
H A D | CoroSplit.h | 25 PreservedAnalyses run(LazyCallGraph::SCC &C, CGSCCAnalysisManager &AM,
|
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | SyntheticCountsUtils.cpp | 24 // Given an SCC, propagate entry counts along the edge of the SCC nodes. 27 const SccTy &SCC, GetProfCountTy GetProfCount, AddCountTy AddCount) { 32 for (auto &Node : SCC) 35 // Partition the edges coming out of the SCC into those whose destination is 36 // in the SCC and the rest. 46 // For nodes in the same SCC, update the counts in two steps: 49 // SCC and summing them up. 50 // 2. Add the additional counts to the nodes in the SCC. 52 // traversal of nodes within the SCC does 26 propagateFromSCC( const SccTy &SCC, GetProfCountTy GetProfCount, AddCountTy AddCount) argument [all...] |
H A D | CGSCCPassManager.cpp | 40 template class AllAnalysesOn<LazyCallGraph::SCC>; 41 template class AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>; 42 template class PassManager<LazyCallGraph::SCC, CGSCCAnalysisManager, 46 LazyCallGraph::SCC, LazyCallGraph &>; 53 PassManager<LazyCallGraph::SCC, CGSCCAnalysisManager, LazyCallGraph &, 54 CGSCCUpdateResult &>::run(LazyCallGraph::SCC &InitialC, 67 // The SCC may be refined while we are running passes over it, so set up 69 LazyCallGraph::SCC *C = &InitialC; 91 PI.runAfterPassInvalidated<LazyCallGraph::SCC>(*Pass); 93 PI.runAfterPass<LazyCallGraph::SCC>(*Pas [all...] |
H A D | LazyCallGraph.cpp | 238 LLVM_DUMP_METHOD void LazyCallGraph::SCC::dump() const { 244 void LazyCallGraph::SCC::verify() { 246 assert(!Nodes.empty() && "Can't have an empty SCC!"); 251 "Node does not map to this SCC!"); 253 "Must set DFS numbers to -1 when adding a node to an SCC!"); 255 "Must set low link to -1 when adding a node to an SCC!"); 262 bool LazyCallGraph::SCC::isParentOf(const SCC &C) const { 275 bool LazyCallGraph::SCC::isAncestorOf(const SCC [all...] |
H A D | GlobalsModRef.cpp | 473 // We do a bottom-up SCC traversal of the call graph. In other words, we 477 const std::vector<CallGraphNode *> &SCC = *I; local 478 assert(!SCC.empty() && "SCC with no functions?"); 480 for (auto *CGN : SCC) 492 // We do a bottom-up SCC traversal of the call graph. In other words, we 495 const std::vector<CallGraphNode *> &SCC = *I; local 496 assert(!SCC.empty() && "SCC with no functions?"); 498 Function *F = SCC[ [all...] |
H A D | CallGraphSCCPass.cpp | 12 // call-graph in SCC order: that is, they process function bottom-up, except for 48 STATISTIC(MaxSCCIterations, "Maximum CGSCCPassMgr iterations on one SCC"); 75 // CGPassManager walks SCC and it needs CallGraph. 87 errs().indent(Offset*2) << "Call Graph SCC Pass Manager\n"; 171 // Run pass P on all functions in the current SCC. 186 LLVM_DEBUG(dbgs() << "CGSCCPASSMGR: Pass Dirtied SCC: " << P->getPassName() 206 LLVM_DEBUG(dbgs() << "CGSCCPASSMGR: Refreshing SCC with " << CurSCC.size() 214 // Scan all functions in the SCC. 416 dbgs() << "CGSCCPASSMGR: Refreshed SCC is now:\n"; 422 dbgs() << "CGSCCPASSMGR: SCC Refres 720 getDescription(const CallGraphSCC &SCC) argument [all...] |
/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | CGSCCPassManager.h | 66 /// entries that become dead. This extra data is provided to every SCC pass so 117 extern template class AllAnalysesOn<LazyCallGraph::SCC>; 119 extern template class AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>; 128 AnalysisManager<LazyCallGraph::SCC, LazyCallGraph &>; 135 PassManager<LazyCallGraph::SCC, CGSCCAnalysisManager, LazyCallGraph &, 136 CGSCCUpdateResult &>::run(LazyCallGraph::SCC &InitialC, 139 extern template class PassManager<LazyCallGraph::SCC, CGSCCAnalysisManager, 145 /// a sequence of SCC passes over each SCC that the manager is run over. This 148 PassManager<LazyCallGraph::SCC, CGSCCAnalysisManage [all...] |
H A D | CallGraphSCCPass.h | 12 // SCC order: that is, they process function bottom-up, except for recursive 46 /// doInitialization - This method is called before the SCC's of the program 53 /// whatever action is necessary for the specified SCC. Note that 54 /// non-recursive (or only self-recursive) functions will have an SCC size of 55 /// 1, where recursive portions of the call graph will have SCC size > 1. 57 /// SCC passes that add or delete functions to the SCC are required to update 58 /// the SCC list, otherwise stale pointers may be dereferenced. 59 virtual bool runOnSCC(CallGraphSCC &SCC) = 0; 61 /// doFinalization - This method is called after the SCC' [all...] |
H A D | SyntheticCountsUtils.h | 44 static void propagateFromSCC(const SccTy &SCC, GetProfCountTy GetProfCount,
|
H A D | LazyCallGraph.h | 20 /// visited prior to a caller (given any SCC constraints), or vice versa. As 71 /// by an edge in the graph, do not invalidate a bottom-up traversal of the SCC 73 /// that functions already visited in a bottom-up order of the SCC DAG are no 75 /// a bottom-up order of the SCC DAG are not required to have already been 79 /// SCC DAG. The greater the fanout of the SCC DAG and the fewer merge points 80 /// in the SCC DAG, the more independence there is in optimizing within it. 116 class SCC; 389 // of an SCC (or RefSCC), or '0' when not yet reached in a DFS walk. 420 /// An SCC o 431 class SCC { class in class:llvm::LazyCallGraph::Edge 439 SCC(RefSCC &OuterRefSCC, NodeRangeT &&Nodes) function in class:llvm::LazyCallGraph::Edge::SCC [all...] |
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
H A D | PruneEH.cpp | 46 // runOnSCC - Analyze the SCC, performing the transformation if possible. 47 bool runOnSCC(CallGraphSCC &SCC) override; 63 static bool runImpl(CallGraphSCC &SCC, CallGraph &CG) { argument 67 // Fill SCCNodes with the elements of the SCC. Used for quickly 68 // looking up whether a given CallGraphNode is in this SCC. 69 for (CallGraphNode *I : SCC) 72 // First pass, scan all of the functions in the SCC, simplifying them 74 for (CallGraphNode *I : SCC) 79 // functions in this SCC: if so, we cannot prune any functions in this SCC 178 runOnSCC(CallGraphSCC &SCC) argument [all...] |
H A D | InlineSimple.cpp | 76 bool runOnSCC(CallGraphSCC &SCC) override; 116 bool SimpleInliner::runOnSCC(CallGraphSCC &SCC) { argument 118 return LegacyInlinerBase::runOnSCC(SCC);
|
H A D | OpenMPOpt.cpp | 225 void foreachUse(SmallVectorImpl<Function *> &SCC, argument 227 for (Function *F : SCC) 261 /// Initialize the ModuleSlice member based on \p SCC. ModuleSlices contains 262 /// (a subset of) all functions that we can look at during this SCC traversal. 263 /// This includes functions (transitively) called from the SCC and the 264 /// (transitive) callers of SCC functions. We also can look at a function if 266 /// a function in the SCC or a caller of a function in the SCC. 267 void initializeModuleSlice(SetVector<Function *> &SCC) { argument 268 ModuleSlice.insert(SCC 480 OpenMPOpt(SmallVectorImpl<Function *> &SCC, CallGraphUpdater &CGUpdater, OptimizationRemarkGetter OREGetter, OMPInformationCache &OMPInfoCache, Attributor &A) argument 921 SmallVectorImpl<Function *> &SCC; member in struct:__anon4547::OpenMPOpt [all...] |
H A D | AlwaysInliner.cpp | 114 bool runOnSCC(CallGraphSCC &SCC) override { return inlineCalls(SCC); }
|
/freebsd-13-stable/contrib/llvm-project/llvm/include/llvm/Transforms/IPO/ |
H A D | Inliner.h | 45 bool runOnSCC(CallGraphSCC &SCC) override; 50 /// breaking the SCC traversal. 70 bool inlineCalls(CallGraphSCC &SCC); 87 /// the SCC and tries to inline if profitable. It can be tuned with a number of 104 PreservedAnalyses run(LazyCallGraph::SCC &C, CGSCCAnalysisManager &AM,
|
H A D | ArgumentPromotion.h | 21 /// This pass walks the functions in each SCC and for each one tries to 41 PreservedAnalyses run(LazyCallGraph::SCC &C, CGSCCAnalysisManager &AM,
|
H A D | FunctionAttrs.h | 51 PreservedAnalyses run(LazyCallGraph::SCC &C, CGSCCAnalysisManager &AM,
|
H A D | OpenMPOpt.h | 60 PreservedAnalyses run(LazyCallGraph::SCC &C, CGSCCAnalysisManager &AM,
|
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUPerfHintAnalysis.h | 30 bool runOnSCC(CallGraphSCC &SCC) override;
|
H A D | AMDGPUAnnotateKernelFeatures.cpp | 59 bool runOnSCC(CallGraphSCC &SCC) override; 372 bool AMDGPUAnnotateKernelFeatures::runOnSCC(CallGraphSCC &SCC) { argument 375 for (CallGraphNode *I : SCC) {
|
H A D | AMDGPUInline.cpp | 73 bool runOnSCC(CallGraphSCC &SCC) override; 98 bool AMDGPUInliner::runOnSCC(CallGraphSCC &SCC) { argument 100 return LegacyInlinerBase::runOnSCC(SCC);
|
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Passes/ |
H A D | StandardInstrumentations.cpp | 46 if (any_isa<const LazyCallGraph::SCC *>(IR)) { 47 const LazyCallGraph::SCC *C = any_cast<const LazyCallGraph::SCC *>(IR); 91 void printIR(const LazyCallGraph::SCC *C, StringRef Banner, 135 if (any_isa<const LazyCallGraph::SCC *>(IR)) { 136 const LazyCallGraph::SCC *C = any_cast<const LazyCallGraph::SCC *>(IR);
|
/freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | CallGraphUpdater.cpp | 94 LazyCallGraph::SCC *C = LCG->lookupSCC(N); 103 LCG->addNewFunctionIntoSCC(NewFn, *SCC); 114 // For the old call graph we remove the function from the SCC right away. 132 // And update the SCC we're iterating as well. 137 SCC->getOuterRefSCC().replaceNodeFunction(OldLCGN, NewFn);
|
/freebsd-13-stable/contrib/llvm-project/llvm/tools/opt/ |
H A D | PassPrinters.cpp | 74 bool runOnSCC(CallGraphSCC &SCC) override { 78 for (CallGraphSCC::iterator I = SCC.begin(), E = SCC.end(); I != E; ++I) {
|