Lines Matching refs:adj
1530 for (InterferenceNode* adj : node->GetAdjacentNodes()) {
1531 DCHECK_NE(adj->stage, NodeStage::kPruned) << "Should be no interferences with pruned nodes";
1533 if (adj->IsPrecolored()) {
1537 bool was_high_degree = IsHighDegreeNode(adj, num_regs_);
1538 DCHECK(adj->ContainsInterference(node))
1540 adj->RemoveInterference(node);
1543 if (was_high_degree && IsLowDegreeNode(adj, num_regs_)) {
1544 EnableCoalesceOpportunities(adj);
1545 for (InterferenceNode* adj_adj : adj->GetAdjacentNodes()) {
1549 DCHECK_EQ(adj->stage, NodeStage::kSpillWorklist);
1550 if (adj->IsMoveRelated()) {
1551 adj->stage = NodeStage::kFreezeWorklist;
1552 freeze_worklist_.push_back(adj);
1554 adj->stage = NodeStage::kSimplifyWorklist;
1555 simplify_worklist_.push_back(adj);
1602 // Reasons an adjacent node `adj` can be "ok":
1603 // (1) If `adj` is low degree, interference with `into` will not affect its existing
1605 // (2) If `adj` is pre-colored, it already interferes with `into`. See (3).
1607 for (InterferenceNode* adj : from->GetAdjacentNodes()) {
1608 if (IsLowDegreeNode(adj, num_regs_) || adj->IsPrecolored() || adj->ContainsInterference(into)) {
1634 for (InterferenceNode* adj : from->GetAdjacentNodes()) {
1635 if (IsHighDegreeNode(adj, num_regs_)) {
1636 high_degree_interferences += from->EdgeWeightWith(adj);
1639 for (InterferenceNode* adj : into->GetAdjacentNodes()) {
1640 if (IsHighDegreeNode(adj, num_regs_)) {
1641 if (from->ContainsInterference(adj)) {
1646 if (adj->GetOutDegree() - into->EdgeWeightWith(adj) < num_regs_) {
1647 high_degree_interferences -= from->EdgeWeightWith(adj);
1650 high_degree_interferences += into->EdgeWeightWith(adj);
1663 for (InterferenceNode* adj : from->GetAdjacentNodes()) {
1664 bool was_low_degree = IsLowDegreeNode(adj, num_regs_);
1665 AddPotentialInterference(adj, into, /*guaranteed_not_interfering_yet*/ false);
1666 if (was_low_degree && IsHighDegreeNode(adj, num_regs_)) {
1669 adj->stage = NodeStage::kSpillWorklist;
1670 spill_worklist_.push(adj);