Searched refs:SCC (Results 1 - 23 of 23) sorted by relevance

/freebsd-11.0-release/contrib/llvm/include/llvm/Analysis/
H A DLazyCallGraph.h21 /// visited prior to a caller (given any SCC constraints), or vice versa. As
62 /// by an edge in the graph, do not invalidate a bottom-up traversal of the SCC
64 /// that functions already visited in a bottom-up order of the SCC DAG are no
66 /// a bottom-up order of the SCC DAG are not required to have already been
70 /// SCC DAG. The greater the fanout of the SCC DAG and the fewer merge points
71 /// in the SCC DAG, the more independence there is in optimizing within it.
106 class SCC;
118 friend class LazyCallGraph::SCC;
204 /// An SCC o
209 class SCC { class in class:llvm::LazyCallGraph
217 SCC(LazyCallGraph &G) : G(&G) {} function in class:llvm::LazyCallGraph::SCC
[all...]
H A DCGSCCPassManager.h32 /// a sequency of SCC passes over each SCC that the manager is run over. This
34 typedef PassManager<LazyCallGraph::SCC> CGSCCPassManager;
42 typedef AnalysisManager<LazyCallGraph::SCC> CGSCCAnalysisManager;
74 /// *all* cached data associated with a \c SCC* in the \c
151 bool invalidate(LazyCallGraph::SCC &) { return false; }
178 Result run(LazyCallGraph::SCC &) { return Result(*MAM); }
217 /// \brief Runs the CGSCC pass across every SCC in the module.
229 for (LazyCallGraph::SCC &C : CG.postorder_sccs()) {
233 // SCC'
[all...]
H A DCallGraphSCCPass.h13 // 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.
60 virtual bool runOnSCC(CallGraphSCC &SCC) = 0;
62 /// doFinalization - This method is called after the SCC'
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Analysis/
H A DCGSCCPassManager.cpp33 // individual CGSCC analyses, there may be an invalid set of SCC objects in
48 FunctionAnalysisManagerCGSCCProxy::run(LazyCallGraph::SCC &C) {
60 LazyCallGraph::SCC &C, const PreservedAnalyses &PA) {
H A DLazyCallGraph.cpp159 void LazyCallGraph::SCC::insert(Node &N) {
165 bool LazyCallGraph::SCC::isDescendantOf(const SCC &C) const {
166 // Walk up the parents of this SCC and verify that we eventually find C.
167 SmallVector<const SCC *, 4> AncestorWorklist;
170 const SCC *AncestorC = AncestorWorklist.pop_back_val();
173 for (const SCC *ParentC : AncestorC->ParentSCCs)
180 void LazyCallGraph::SCC::insertIntraSCCEdge(Node &CallerN, Node &CalleeN) {
184 assert(G->SCCMap.lookup(&CallerN) == this && "Caller must be in this SCC.");
185 assert(G->SCCMap.lookup(&CalleeN) == this && "Callee must be in this SCC
701 printSCC(raw_ostream &OS, LazyCallGraph::SCC &SCC) argument
[all...]
H A DGlobalsModRef.cpp448 // We do a bottom-up SCC traversal of the call graph. In other words, we
452 const std::vector<CallGraphNode *> &SCC = *I; local
453 assert(!SCC.empty() && "SCC with no functions?");
455 for (auto *CGN : SCC)
467 // We do a bottom-up SCC traversal of the call graph. In other words, we
470 const std::vector<CallGraphNode *> &SCC = *I; local
471 assert(!SCC.empty() && "SCC with no functions?");
473 if (!SCC[
[all...]
H A DCallGraphSCCPass.cpp13 // call-graph in SCC order: that is, they process function bottom-up, except for
37 STATISTIC(MaxSCCIterations, "Maximum CGSCCPassMgr iterations on one SCC");
64 // CGPassManager walks SCC and it needs CallGraph.
78 errs().indent(Offset*2) << "Call Graph SCC Pass Manager\n";
144 // Run pass P on all functions in the current SCC.
159 DEBUG(dbgs() << "CGSCCPASSMGR: Pass Dirtied SCC: "
181 DEBUG(dbgs() << "CGSCCPASSMGR: Refreshing SCC with " << CurSCC.size()
190 // Scan all functions in the SCC.
362 dbgs() << "CGSCCPASSMGR: Refreshed SCC is now:\n";
369 dbgs() << "CGSCCPASSMGR: SCC Refres
[all...]
H A DBlockFrequencyInfoImpl.cpp617 const std::vector<const IrreducibleGraph::IrrNode *> &SCC,
619 // Map from nodes in the SCC to whether it's an entry block.
623 for (const auto *I : SCC)
684 const std::vector<const IrreducibleGraph::IrrNode *> &SCC) {
685 // Translate the SCC into RPO.
690 findIrreducibleHeaders(BFI, G, SCC, Headers, Others);
714 // Translate the SCC into RPO.
614 findIrreducibleHeaders( const BlockFrequencyInfoImplBase &BFI, const IrreducibleGraph &G, const std::vector<const IrreducibleGraph::IrrNode *> &SCC, LoopData::NodeList &Headers, LoopData::NodeList &Others) argument
681 createIrreducibleLoop( BlockFrequencyInfoImplBase &BFI, const IrreducibleGraph &G, LoopData *OuterLoop, std::list<LoopData>::iterator Insert, const std::vector<const IrreducibleGraph::IrrNode *> &SCC) argument
/freebsd-11.0-release/contrib/llvm/lib/Transforms/IPO/
H A DInlineSimple.cpp60 bool runOnSCC(CallGraphSCC &SCC) override;
102 bool SimpleInliner::runOnSCC(CallGraphSCC &SCC) { argument
104 return Inliner::runOnSCC(SCC);
H A DPruneEH.cpp48 // runOnSCC - Analyze the SCC, performing the transformation if possible.
49 bool runOnSCC(CallGraphSCC &SCC) override;
66 bool PruneEH::runOnSCC(CallGraphSCC &SCC) { argument
71 // Fill SCCNodes with the elements of the SCC. Used for quickly
72 // looking up whether a given CallGraphNode is in this SCC.
73 for (CallGraphSCC::iterator I = SCC.begin(), E = SCC.end(); I != E; ++I)
76 // First pass, scan all of the functions in the SCC, simplifying them
78 for (CallGraphSCC::iterator I = SCC.begin(), E = SCC
[all...]
H A DFunctionAttrs.cpp61 bool runOnSCC(CallGraphSCC &SCC) override;
122 // Ignore calls to functions in the same SCC.
200 /// Deduce readonly/readnone attributes for the SCC.
203 // Check if any of the functions in the SCC read or write memory. If they
222 // Success! Functions in this SCC do not access memory, or only read memory.
258 /// in the same SCC that the pointer data flows into. We use this to build an
259 /// SCC of the arguments.
297 /// This tracker checks whether callees are in the SCC, and if so it does not
335 // use. In this case it does not matter if the callee is within our SCC
352 bool Captured; // True only if certainly captured (used outside our SCC)
[all...]
H A DInliner.cpp143 // When processing our SCC, check to see if CS was inlined from some other
155 if (InlineHistory != -1) // Only do merging for top-level call sites in SCC.
186 // function in this SCC.
442 bool Inliner::runOnSCC(CallGraphSCC &SCC) { argument
448 DEBUG(dbgs() << "Inliner visiting SCC:");
449 for (CallGraphNode *Node : SCC) {
466 for (CallGraphNode *Node : SCC) {
496 // current SCC to the end of the list.
594 // TODO: Can remove if in SCC now.
615 // move a call site to a function in this SCC befor
[all...]
H A DArgumentPromotion.cpp74 bool runOnSCC(CallGraphSCC &SCC) override;
114 bool ArgPromotion::runOnSCC(CallGraphSCC &SCC) { argument
117 do { // Iterate until we stop promoting from this SCC.
119 // Attempt to promote arguments from all functions in this SCC.
120 for (CallGraphSCC::iterator I = SCC.begin(), E = SCC.end(); I != E; ++I) {
123 SCC.ReplaceNode(*I, CGN);
/freebsd-11.0-release/contrib/llvm/include/llvm/Transforms/IPO/
H A DInlinerPass.h43 bool runOnSCC(CallGraphSCC &SCC) override;
47 // processing to avoid breaking the SCC traversal.
/freebsd-11.0-release/contrib/llvm/tools/opt/
H A DPassPrinters.cpp72 bool runOnSCC(CallGraphSCC &SCC) override {
77 for (CallGraphSCC::iterator I = SCC.begin(), E = SCC.end(); I != E; ++I) {
/freebsd-11.0-release/contrib/llvm/lib/Passes/
H A DPassBuilder.cpp66 PreservedAnalyses run(LazyCallGraph::SCC &C) {
75 Result run(LazyCallGraph::SCC &) { return Result(); }
/freebsd-11.0-release/contrib/binutils/gas/config/
H A Dtc-m68851.h61 110 SCC Stack Change Control
100 #define SCC (VAL+1) /* 54 */ macro
101 #define AC (SCC+1) /* 55 */
184 /* TC, CRP, DRP, SRP, CAL, VAL, SCC, AC */
/freebsd-11.0-release/contrib/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp5669 SDValue SCC = SimplifySetCC(getSetCCResultType(N0.getValueType()),
5671 if (SCC.getNode()) {
5672 AddToWorklist(SCC.getNode());
5674 if (ConstantSDNode *SCCC = dyn_cast<ConstantSDNode>(SCC.getNode())) {
5679 } else if (SCC->getOpcode() == ISD::UNDEF) {
5683 } else if (SCC.getOpcode() == ISD::SETCC) {
5686 SCC.getOperand(0), SCC.getOperand(1), N2, N3,
5687 SCC.getOperand(2));
6153 SDValue SCC local
6484 SDValue SCC = local
6663 SDValue SCC = local
13790 SDValue SCC = SimplifySelectCC(DL, N0.getOperand(0), N0.getOperand(1), N1, N2, local
13981 SDValue SCC = SimplifySetCC(getSetCCResultType(N0.getValueType()), local
14150 SDValue Temp, SCC; local
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Target/AMDGPU/
H A DAMDGPUAsmPrinter.cpp369 case AMDGPU::SCC:
H A DSIInstrInfo.cpp317 // If we are trying to copy to or from SCC, there is a bug somewhere else in
320 assert(DestReg != AMDGPU::SCC && SrcReg != AMDGPU::SCC);
2558 // Remove any references to SCC. Vector instructions can't read from it, and
2563 if (Op.isReg() && Op.getReg() == AMDGPU::SCC)
/freebsd-11.0-release/contrib/llvm/lib/Target/AMDGPU/InstPrinter/
H A DAMDGPUInstPrinter.cpp137 case AMDGPU::SCC:
/freebsd-11.0-release/contrib/llvm/lib/Target/AMDGPU/AsmParser/
H A DAMDGPUAsmParser.cpp509 .Case("scc", AMDGPU::SCC)
/freebsd-11.0-release/contrib/llvm/lib/Transforms/InstCombine/
H A DInstCombineAndOrXor.cpp452 /// that (icmp SCC (A & B), C) satisfies.
454 ICmpInst::Predicate SCC)
459 bool icmp_eq = (SCC == ICmpInst::ICMP_EQ);
453 getTypeOfMaskedICmp(Value* A, Value* B, Value* C, ICmpInst::Predicate SCC) argument

Completed in 234 milliseconds