Lines Matching defs:MBBI
315 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
333 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::STMG));
361 TII->storeRegToStackSlot(MBB, MBBI, Reg, true, I.getFrameIdx(),
366 TII->storeRegToStackSlot(MBB, MBBI, Reg, true, I.getFrameIdx(),
375 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
384 DebugLoc DL = MBBI != MBB.end() ? MBBI->getDebugLoc() : DebugLoc();
390 TII->loadRegFromStackSlot(MBB, MBBI, Reg, I.getFrameIdx(),
393 TII->loadRegFromStackSlot(MBB, MBBI, Reg, I.getFrameIdx(),
408 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::LMG));
475 // Emit instructions before MBBI (in MBB) to add NumBytes to Reg.
477 MachineBasicBlock::iterator &MBBI, const DebugLoc &DL,
495 MachineInstr *MI = BuildMI(MBB, MBBI, DL, TII->get(Opcode), Reg)
505 MachineBasicBlock::iterator MBBI,
510 BuildMI(MBB, MBBI, DL, ZII->get(TargetOpcode::CFI_INSTRUCTION))
516 MachineBasicBlock::iterator MBBI,
524 BuildMI(MBB, MBBI, DL, ZII->get(TargetOpcode::CFI_INSTRUCTION))
536 MachineBasicBlock::iterator MBBI = MBB.begin();
567 if (MBBI != MBB.end() && MBBI->getOpcode() == SystemZ::STMG)
568 ++MBBI;
580 BuildMI(MBB, MBBI, DL, ZII->get(TargetOpcode::CFI_INSTRUCTION))
616 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::PROBED_STACKALLOC))
624 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::LGR))
626 emitIncrement(MBB, MBBI, DL, SystemZ::R15D, Delta, ZII);
627 buildCFAOffs(MBB, MBBI, DL, SPOffsetFromCFA + Delta, ZII);
629 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::STG))
638 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::LGR), SystemZ::R11D)
642 buildDefCFAReg(MBB, MBBI, DL, SystemZ::R11D, ZII);
656 if (MBBI != MBB.end() &&
657 (MBBI->getOpcode() == SystemZ::STD ||
658 MBBI->getOpcode() == SystemZ::STDY))
659 ++MBBI;
663 if (MBBI != MBB.end() &&
664 MBBI->getOpcode() == SystemZ::VST)
665 ++MBBI;
685 BuildMI(MBB, MBBI, DL, ZII->get(TargetOpcode::CFI_INSTRUCTION))
692 MachineBasicBlock::iterator MBBI = MBB.getLastNonDebugInstr();
703 assert(MBBI->isReturn() && "Can only insert epilogue into returning blocks");
707 --MBBI;
708 unsigned Opcode = MBBI->getOpcode();
713 DebugLoc DL = MBBI->getDebugLoc();
714 uint64_t Offset = StackSize + MBBI->getOperand(AddrOpNo + 1).getImm();
721 emitIncrement(MBB, MBBI, DL, MBBI->getOperand(AddrOpNo).getReg(),
728 MBBI->setDesc(ZII->get(NewOpcode));
729 MBBI->getOperand(AddrOpNo + 1).ChangeToImmediate(Offset);
731 DebugLoc DL = MBBI->getDebugLoc();
732 emitIncrement(MBB, MBBI, DL, SystemZ::R15D, StackSize, ZII);
757 MachineBasicBlock::iterator MBBI = StackAllocMI;
780 BuildMI(*MBB, MBBI, DL, ZII->get(SystemZ::LGR))
788 allocateAndProbe(*MBB, MBBI, ProbeSize, true/*EmitCFI*/);
795 BuildMI(*MBB, MBBI, DL, ZII->get(SystemZ::LGR), SystemZ::R0D)
797 buildDefCFAReg(*MBB, MBBI, DL, SystemZ::R0D, ZII);
798 emitIncrement(*MBB, MBBI, DL, SystemZ::R0D, -int64_t(LoopAlloc), ZII);
799 buildCFAOffs(*MBB, MBBI, DL, -int64_t(SystemZMC::ELFCallFrameSize + LoopAlloc),
802 DoneMBB = SystemZ::splitBlockBefore(MBBI, MBB);
816 MBBI = DoneMBB->begin();
817 buildDefCFAReg(*MBB, MBBI, DL, SystemZ::R15D, ZII);
821 allocateAndProbe(*MBB, MBBI, Residual, true/*EmitCFI*/);
824 BuildMI(*MBB, MBBI, DL, ZII->get(SystemZ::STG))
1083 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
1102 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::STMG));
1130 TII->storeRegToStackSlot(MBB, MBBI, Reg, true, I.getFrameIdx(),
1135 TII->storeRegToStackSlot(MBB, MBBI, Reg, true, I.getFrameIdx(),
1144 MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI,
1156 DebugLoc DL = MBBI != MBB.end() ? MBBI->getDebugLoc() : DebugLoc();
1162 TII->loadRegFromStackSlot(MBB, MBBI, Reg, I.getFrameIdx(),
1165 TII->loadRegFromStackSlot(MBB, MBBI, Reg, I.getFrameIdx(),
1176 BuildMI(MBB, MBBI, DL, TII->get(SystemZ::LG), RestoreGPRs.LowGPR)
1182 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::LMG));
1209 MachineBasicBlock::iterator MBBI = MBB.begin();
1227 if ((MBBI != MBB.end()) && ((MBBI->getOpcode() == SystemZ::STMG))) {
1231 Offset = Regs.getStackPointerBias() + MBBI->getOperand(Operand).getImm();
1236 StoreInstr = &*MBBI;
1237 MBBI->getOperand(Operand).setImm(Offset);
1238 ++MBBI;
1244 MachineBasicBlock::iterator InsertPt = StoreInstr ? StoreInstr : MBBI;
1258 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::STG))
1283 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::LGR),
1308 BuildMI(MBB, MBBI, DL, TII->get(SystemZ::STG))
1322 MachineBasicBlock::iterator MBBI = MBB.getLastNonDebugInstr();
1329 assert(MBBI->isReturn() && "Can only insert epilogue into returning blocks");
1335 DebugLoc DL = MBBI->getDebugLoc();
1336 emitIncrement(MBB, MBBI, DL, SPReg, StackSize, ZII);