Lines Matching refs:IntA
182 bool hasOtherReachingDefs(LiveInterval &IntA, LiveInterval &IntB,
466 LiveInterval &IntA = in adjustCopiesBackFrom() local
499 LiveInterval::iterator AS = IntA.FindSegmentContaining(CopyUseIdx); in adjustCopiesBackFrom()
501 if (AS == IntA.end()) return false; in adjustCopiesBackFrom()
567 CopyMI->substituteRegister(IntA.reg, IntB.reg, 0, *TRI); in adjustCopiesBackFrom()
569 shrinkToUses(&IntA); in adjustCopiesBackFrom()
575 bool RegisterCoalescer::hasOtherReachingDefs(LiveInterval &IntA, in hasOtherReachingDefs() argument
581 if (LIS->hasPHIKill(IntA, AValNo)) in hasOtherReachingDefs()
584 for (LiveRange::Segment &ASeg : IntA.segments) { in hasOtherReachingDefs()
618 LiveInterval &IntA = in removeCopyByCommutingDef() local
650 VNInfo *AValNo = IntA.getVNInfoAt(CopyIdx.getRegSlot(true)); in removeCopyByCommutingDef()
661 int DefIdx = DefMI->findRegisterDefOperandIdx(IntA.reg); in removeCopyByCommutingDef()
687 if (hasOtherReachingDefs(IntA, IntB, AValNo, BValNo)) in removeCopyByCommutingDef()
692 for (MachineOperand &MO : MRI->use_nodbg_operands(IntA.reg)) { in removeCopyByCommutingDef()
696 LiveInterval::iterator US = IntA.FindSegmentContaining(UseIdx); in removeCopyByCommutingDef()
697 if (US == IntA.end() || US->valno != AValNo) in removeCopyByCommutingDef()
714 if (TargetRegisterInfo::isVirtualRegister(IntA.reg) && in removeCopyByCommutingDef()
716 !MRI->constrainRegClass(IntB.reg, MRI->getRegClass(IntA.reg))) in removeCopyByCommutingDef()
735 for (MachineRegisterInfo::use_iterator UI = MRI->use_begin(IntA.reg), in removeCopyByCommutingDef()
750 LiveInterval::iterator US = IntA.FindSegmentContaining(UseIdx); in removeCopyByCommutingDef()
751 assert(US != IntA.end() && "Use must be live"); in removeCopyByCommutingDef()
795 if (!IntA.hasSubRanges()) { in removeCopyByCommutingDef()
796 LaneBitmask Mask = MRI->getMaxLaneMaskForVReg(IntA.reg); in removeCopyByCommutingDef()
797 IntA.createSubRangeFrom(Allocator, Mask, IntA); in removeCopyByCommutingDef()
800 for (LiveInterval::SubRange &SA : IntA.subranges()) { in removeCopyByCommutingDef()
844 addSegmentsWithValNo(IntB, BValNo, IntA, AValNo); in removeCopyByCommutingDef()
847 LIS->removeVRegDefAt(IntA, AValNo->def); in removeCopyByCommutingDef()
849 DEBUG(dbgs() << "\t\ttrimmed: " << IntA << '\n'); in removeCopyByCommutingDef()