Lines Matching full:scc
98 // 1. Identify SCCs and for each SCC create a pi-block node containing all in createPiBlocks()
99 // the nodes in that SCC. in createPiBlocks()
100 // 2. Identify incoming edges incident to the nodes inside of the SCC and in createPiBlocks()
102 // 3. Identify outgoing edges from the nodes inside of the SCC to nodes in createPiBlocks()
104 // SCC node instead. in createPiBlocks()
106 // Adding nodes as we iterate through the SCCs cause the SCC in createPiBlocks()
108 // collect a list of nodes that are part of an SCC, and then iterate over in createPiBlocks()
110 // list of nodes in an SCC. Note: trivial SCCs containing a single node are in createPiBlocks()
113 for (auto &SCC : make_range(scc_begin(&Graph), scc_end(&Graph))) { in createPiBlocks() local
114 if (SCC.size() > 1) in createPiBlocks()
115 ListOfSCCs.emplace_back(SCC.begin(), SCC.end()); in createPiBlocks()
122 // SCC iterator may put the nodes in an order that's different from the in createPiBlocks()
133 // are inside the SCC. in createPiBlocks()
136 // We have the set of nodes in the SCC. We go through the set of nodes in createPiBlocks()
137 // that are outside of the SCC and look for edges that cross the two sets. in createPiBlocks()
140 // Skip the SCC node and all the nodes inside of it. in createPiBlocks()
145 Incoming, // Incoming edges to the SCC in createPiBlocks()
146 Outgoing, // Edges going ot of the SCC in createPiBlocks()