reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
560 AntiDepReg = Edge->getReg(); 561 assert(AntiDepReg != 0 && "Anti-dependence on reg0?"); 562 if (!MRI.isAllocatable(AntiDepReg)) 564 AntiDepReg = 0; 565 else if (KeepRegs.test(AntiDepReg)) 568 AntiDepReg = 0; 581 (P->getKind() != SDep::Anti || P->getReg() != AntiDepReg) : 582 (P->getKind() == SDep::Data && P->getReg() == AntiDepReg)) { 583 AntiDepReg = 0; 607 AntiDepReg = 0; 608 else if (AntiDepReg) { 618 if (MO.isUse() && TRI->regsOverlap(AntiDepReg, Reg)) { 619 AntiDepReg = 0; 622 if (MO.isDef() && Reg != AntiDepReg) 629 const TargetRegisterClass *RC = AntiDepReg != 0 ? Classes[AntiDepReg] 629 const TargetRegisterClass *RC = AntiDepReg != 0 ? Classes[AntiDepReg] 631 assert((AntiDepReg == 0 || RC != nullptr) && 634 AntiDepReg = 0; 640 if (AntiDepReg != 0) { 643 Range = RegRefs.equal_range(AntiDepReg); 645 AntiDepReg, 646 LastNewReg[AntiDepReg], 649 << printReg(AntiDepReg, TRI) << " with " 650 << RegRefs.count(AntiDepReg) << " references" 664 AntiDepReg, NewReg); 670 Classes[NewReg] = Classes[AntiDepReg]; 671 DefIndices[NewReg] = DefIndices[AntiDepReg]; 672 KillIndices[NewReg] = KillIndices[AntiDepReg]; 677 Classes[AntiDepReg] = nullptr; 678 DefIndices[AntiDepReg] = KillIndices[AntiDepReg]; 678 DefIndices[AntiDepReg] = KillIndices[AntiDepReg]; 679 KillIndices[AntiDepReg] = ~0u; 680 assert(((KillIndices[AntiDepReg] == ~0u) != 681 (DefIndices[AntiDepReg] == ~0u)) && 684 RegRefs.erase(AntiDepReg); 685 LastNewReg[AntiDepReg] = NewReg;