Home | History | Annotate | Download | only in CodeGen

Lines Matching full:cascade

127     // Cascade - Eviction loop prevention. See canEvictInterference().
128 unsigned Cascade;
130 RegInfo() : Stage(RS_New), Cascade(0) {}
484 /// Cascade numbers are used to prevent infinite loops if this function is a
519 // Find VirtReg's cascade number. This will be unassigned if VirtReg was never
520 // involved in an eviction before. If a cascade number was assigned, deny
521 // evicting anything with the same or a newer cascade number. This prevents
524 // This works out so a register without a cascade number is allowed to evict
526 unsigned Cascade = ExtraRegInfo[VirtReg.reg].Cascade;
527 if (!Cascade)
528 Cascade = NextCascade;
555 // Only evict older cascades or live ranges without a cascade.
556 unsigned IntfCascade = ExtraRegInfo[Intf->reg].Cascade;
557 if (Cascade <= IntfCascade) {
586 // Make sure that VirtReg has a cascade number, and assign that cascade
588 // evicted by a newer cascade, preventing infinite loops.
589 unsigned Cascade = ExtraRegInfo[VirtReg.reg].Cascade;
590 if (!Cascade)
591 Cascade = ExtraRegInfo[VirtReg.reg].Cascade = NextCascade++;
594 << " interference: Cascade " << Cascade << '\n');
612 assert((ExtraRegInfo[Intf->reg].Cascade < Cascade ||
614 "Cannot decrease cascade number, illegal eviction");
615 ExtraRegInfo[Intf->reg].Cascade = Cascade;
1716 << " Cascade " << ExtraRegInfo[VirtReg.reg].Cascade << '\n');