Lines Matching refs:cycle
29 SmallVector<Value> cycle; in getCycle() local
32 cycle.push_back(node); in getCycle()
36 return cycle; in getCycle()
48 static void contract(RootOrderingGraph &graph, ArrayRef<Value> cycle, in contract() argument
52 Value rep = cycle.front(); in contract()
53 DenseSet<Value> cycleSet(cycle.begin(), cycle.end()); in contract()
170 SmallVector<Value> cycle = getCycle(parents, node); in solve() local
177 contract(graph, cycle, parentDepths, actualSource, actualTarget); in solve()
190 cycle.push_back(node); // complete the cycle in solve()
191 for (size_t i = 0, e = cycle.size() - 1; i < e; ++i) { in solve()
192 totalCost += parentDepths.lookup(cycle[i]); in solve()
193 if (cycle[i] == entry) in solve()
194 parents[cycle[i]] = parent; // break the cycle in solve()
196 parents[cycle[i]] = cycle[i + 1]; in solve()