Lines Matching full:scc
12 // call-graph in SCC order: that is, they process function bottom-up, except for
51 STATISTIC(MaxSCCIterations, "Maximum CGSCCPassMgr iterations on one SCC");
78 // CGPassManager walks SCC and it needs CallGraph. in getAnalysisUsage()
90 errs().indent(Offset*2) << "Call Graph SCC Pass Manager\n"; in dumpPassStructure()
174 // Run pass P on all functions in the current SCC. in RunPassOnSCC()
189 LLVM_DEBUG(dbgs() << "CGSCCPASSMGR: Pass Dirtied SCC: " << P->getPassName() in RunPassOnSCC()
209 LLVM_DEBUG(dbgs() << "CGSCCPASSMGR: Refreshing SCC with " << CurSCC.size() in RefreshCallGraph()
217 // Scan all functions in the SCC. in RefreshCallGraph()
405 // large scc's. in RefreshCallGraph()
411 dbgs() << "CGSCCPASSMGR: Refreshed SCC is now:\n"; in RefreshCallGraph()
417 dbgs() << "CGSCCPASSMGR: SCC Refresh didn't change call graph.\n"; in RefreshCallGraph()
424 /// Execute the body of the entire pass manager on the specified SCC.
440 // Run all passes on current SCC. in RunAllPassesOnSCC()
445 // If we're in -debug-pass=Executions mode, construct the SCC node list, in RunAllPassesOnSCC()
468 // Actually run this pass on the current SCC. in RunAllPassesOnSCC()
493 // functionpass), refresh it before we move on to the next SCC. in RunAllPassesOnSCC()
505 // Walk the callgraph in bottom-up SCC order. in runOnModule()
510 // Copy the current SCC and increment past it so that the pass can hack in runOnModule()
511 // on the SCC if it wants to without invalidating our iterator. in runOnModule()
517 // functions in this SCC. However, we support iterative compilation in the in runOnModule()
532 << " SCCPASSMGR: Re-visiting SCC, iteration #" << Iteration in runOnModule()
583 /// This informs the SCC and the pass manager that the specified
588 assert(i != Nodes.size() && "Node not in SCC"); in ReplaceNode()
625 // Create new Call Graph SCC Pass Manager if it does not exist. in assignPassManager()
678 bool runOnSCC(CallGraphSCC &SCC) override { in runOnSCC() argument
691 SCC.getCallGraph().getModule().print(OS, nullptr); in runOnSCC()
695 for (CallGraphNode *CGN : SCC) { in runOnSCC()
712 SCC.getCallGraph().getModule().print(OS, nullptr); in runOnSCC()
729 static std::string getDescription(const CallGraphSCC &SCC) { in getDescription() argument
730 std::string Desc = "SCC ("; in getDescription()
732 for (CallGraphNode *CGN : SCC) { in getDescription()
744 bool CallGraphSCCPass::skipSCC(CallGraphSCC &SCC) const { in skipSCC()
746 SCC.getCallGraph().getModule().getContext().getOptPassGate(); in skipSCC()
748 !Gate.shouldRunPass(this->getPassName(), getDescription(SCC)); in skipSCC()