Lines Matching defs:NewMI

141     MachineInstr *NewMI = cloneInstr(CI, MaxStageCount, StageNum);
142 updateInstruction(NewMI, false, MaxStageCount, StageNum, VRMap);
143 KernelBB->push_back(NewMI);
144 InstrMap[NewMI] = CI;
150 MachineInstr *NewMI = MF.CloneMachineInstr(&MI);
151 updateInstruction(NewMI, false, MaxStageCount, 0, VRMap);
152 KernelBB->push_back(NewMI);
153 InstrMap[NewMI] = &MI;
225 MachineInstr *NewMI =
227 updateInstruction(NewMI, false, i, (unsigned)StageNum, VRMap);
228 NewBB->push_back(NewMI);
229 InstrMap[NewMI] = &*BBI;
303 MachineInstr *NewMI = cloneInstr(In, UINT_MAX, 0);
304 updateInstruction(NewMI, i == 1, EpilogStage, 0, VRMap);
305 NewBB->push_back(NewMI);
306 InstrMap[NewMI] = In;
966 void ModuloScheduleExpander::updateMemOperands(MachineInstr &NewMI,
973 if (NewMI.memoperands_empty())
976 for (MachineMemOperand *MMO : NewMI.memoperands()) {
994 NewMI.setMemRefs(MF, NewMMOs);
1002 MachineInstr *NewMI = MF.CloneMachineInstr(OldMI);
1003 updateMemOperands(*NewMI, *OldMI, CurStageNum - InstStageNum);
1004 return NewMI;
1012 MachineInstr *NewMI = MF.CloneMachineInstr(OldMI);
1023 NewMI->getOperand(OffsetPos).setImm(NewOffset);
1025 updateMemOperands(*NewMI, *OldMI, CurStageNum - InstStageNum);
1026 return NewMI;
1031 void ModuloScheduleExpander::updateInstruction(MachineInstr *NewMI,
1036 for (MachineOperand &MO : NewMI->operands()) {
1697 MachineInstr *NewMI = MF.CloneMachineInstr(Phi);
1698 DestBB->insert(InsertPt, NewMI);
1701 NewMI->getOperand(0).setReg(R);
1702 NewMI->getOperand(1).setReg(OrigR);
1703 NewMI->getOperand(2).setMBB(*DestBB->pred_begin());
1705 CanonicalMIs[NewMI] = CanonicalMIs[Phi];
1706 BlockMIs[{DestBB, CanonicalMIs[Phi]}] = NewMI;
1707 PhiNodeLoopIteration[NewMI] = PhiNodeLoopIteration[Phi];
2109 MachineInstr *NewMI = MF.CloneMachineInstr(OldMI);
2112 NewMI->dropMemRefs(MF);
2114 return NewMI;
2529 MachineInstr *NewMI = cloneInstr(MI);
2530 updateInstrDef(NewMI, PrologVRMap[PrologNum], false);
2531 NewMIMap[NewMI] = {PrologNum, StageNum};
2532 Prolog->push_back(NewMI);
2563 MachineInstr *NewMI = cloneInstr(MI);
2565 LastStage0Insts[MI] = NewMI;
2566 updateInstrDef(NewMI, KernelVRMap[UnrollNum],
2569 NewMIMap[NewMI] = {UnrollNum, StageNum};
2570 NewKernel->push_back(NewMI);
2605 MachineInstr *NewMI = cloneInstr(MI);
2606 updateInstrDef(NewMI, EpilogVRMap[EpilogNum], StageNum - 1 == EpilogNum);
2607 NewMIMap[NewMI] = {EpilogNum, StageNum};
2608 Epilog->push_back(NewMI);
2665 /// Create new virtual registers for definitions of NewMI and update NewMI.
2668 void ModuloScheduleExpanderMVE::updateInstrDef(MachineInstr *NewMI,
2671 for (MachineOperand &MO : NewMI->all_defs()) {