Home | History | Annotate | Download | only in ARM

Lines Matching full:mbb

37 emitSPUpdate(MachineBasicBlock &MBB,
42 emitThumbRegPlusImmediate(MBB, MBBI, dl, ARM::SP, ARM::SP, NumBytes, TII,
48 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
71 emitSPUpdate(MBB, I, TII, dl, *RegInfo, -Amount);
74 emitSPUpdate(MBB, I, TII, dl, *RegInfo, Amount);
78 MBB.erase(I);
82 MachineBasicBlock &MBB = MF.front();
83 MachineBasicBlock::iterator MBBI = MBB.begin();
95 DebugLoc dl = MBBI != MBB.end() ? MBBI->getDebugLoc() : DebugLoc();
109 emitSPUpdate(MBB, MBBI, TII, dl, *RegInfo, -ArgRegsSaveSize,
114 emitSPUpdate(MBB, MBBI, TII, dl, *RegInfo, -NumBytes,
153 if (MBBI != MBB.end() && MBBI->getOpcode() == ARM::tPUSH) {
155 if (MBBI != MBB.end())
174 AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tADDrSPi), FramePtr)
185 emitSPUpdate(MBB, MBBI, TII, dl, *RegInfo, -NumBytes,
206 AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tMOVr), BasePtr)
240 MachineBasicBlock &MBB) const {
241 MachineBasicBlock::iterator MBBI = MBB.getLastNonDebugInstr();
261 emitSPUpdate(MBB, MBBI, TII, dl, *RegInfo, NumBytes);
264 if (MBBI != MBB.begin()) {
267 while (MBBI != MBB.begin() && isCSRestore(MBBI, CSRegs));
285 emitThumbRegPlusImmediate(MBB, MBBI, dl, ARM::R4, FramePtr, -NumBytes,
287 AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tMOVr),
291 AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tMOVr),
296 &MBB.front() != MBBI &&
299 emitSPUpdate(MBB, PMBBI, TII, dl, *RegInfo, NumBytes);
301 emitSPUpdate(MBB, MBBI, TII, dl, *RegInfo, NumBytes);
312 while (MBBI != MBB.end() && isCSRestore(MBBI, CSRegs))
315 AddDefaultPred(BuildMI(MBB, MBBI, dl, TII.get(ARM::tPOP)))
318 emitSPUpdate(MBB, MBBI, TII, dl, *RegInfo, ArgRegsSaveSize);
321 BuildMI(MBB, MBBI, dl, TII.get(ARM::tBX_RET_vararg))
326 MBB.erase(MBBI);
331 spillCalleeSavedRegisters(MachineBasicBlock &MBB,
339 MachineFunction &MF = *MBB.getParent();
342 if (MI != MBB.end()) DL = MI->getDebugLoc();
344 MachineInstrBuilder MIB = BuildMI(MBB, MI, DL, TII.get(ARM::tPUSH));
354 MachineFunction &MF = *MBB.getParent();
361 MBB.addLiveIn(Reg);
370 restoreCalleeSavedRegisters(MachineBasicBlock &MBB,
377 MachineFunction &MF = *MBB.getParent();
396 MI = MBB.erase(MI);
404 MBB.insert(MI, &*MIB);