Lines Matching refs:MF
67 assignCalleeSavedSpillSlots(MachineFunction &MF, in assignCalleeSavedSpillSlots() argument
70 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in assignCalleeSavedSpillSlots()
71 MachineFrameInfo &MFFrame = MF.getFrameInfo(); in assignCalleeSavedSpillSlots()
72 bool IsVarArg = MF.getFunction().isVarArg(); in assignCalleeSavedSpillSlots()
81 int Offset = getRegSpillOffset(MF, Reg); in assignCalleeSavedSpillSlots()
104 int Offset = getRegSpillOffset(MF, Reg); in assignCalleeSavedSpillSlots()
114 if (usePackedStack(MF)) in assignCalleeSavedSpillSlots()
133 void SystemZFrameLowering::determineCalleeSaves(MachineFunction &MF, in determineCalleeSaves() argument
136 TargetFrameLowering::determineCalleeSaves(MF, SavedRegs, RS); in determineCalleeSaves()
138 MachineFrameInfo &MFFrame = MF.getFrameInfo(); in determineCalleeSaves()
139 const TargetRegisterInfo *TRI = MF.getSubtarget().getRegisterInfo(); in determineCalleeSaves()
140 bool HasFP = hasFP(MF); in determineCalleeSaves()
141 SystemZMachineFunctionInfo *MFI = MF.getInfo<SystemZMachineFunctionInfo>(); in determineCalleeSaves()
142 bool IsVarArg = MF.getFunction().isVarArg(); in determineCalleeSaves()
153 if (!MF.getLandingPads().empty()) { in determineCalleeSaves()
172 const MCPhysReg *CSRegs = TRI->getCalleeSavedRegs(&MF); in determineCalleeSaves()
205 MachineFunction &MF = *MBB.getParent(); in spillCalleeSavedRegisters() local
206 const TargetInstrInfo *TII = MF.getSubtarget().getInstrInfo(); in spillCalleeSavedRegisters()
207 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in spillCalleeSavedRegisters()
208 bool IsVarArg = MF.getFunction().isVarArg(); in spillCalleeSavedRegisters()
265 MachineFunction &MF = *MBB.getParent(); in restoreCalleeSavedRegisters() local
266 const TargetInstrInfo *TII = MF.getSubtarget().getInstrInfo(); in restoreCalleeSavedRegisters()
267 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in restoreCalleeSavedRegisters()
268 bool HasFP = hasFP(MF); in restoreCalleeSavedRegisters()
316 processFunctionBeforeFrameFinalized(MachineFunction &MF, in processFunctionBeforeFrameFinalized() argument
318 MachineFrameInfo &MFFrame = MF.getFrameInfo(); in processFunctionBeforeFrameFinalized()
319 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in processFunctionBeforeFrameFinalized()
320 MachineRegisterInfo *MRI = &MF.getRegInfo(); in processFunctionBeforeFrameFinalized()
321 bool BackChain = MF.getFunction().hasFnAttribute("backchain"); in processFunctionBeforeFrameFinalized()
323 if (!usePackedStack(MF) || BackChain) in processFunctionBeforeFrameFinalized()
325 getOrCreateFramePointerSaveIndex(MF); in processFunctionBeforeFrameFinalized()
328 uint64_t StackSize = (MFFrame.estimateStackSize(MF) + in processFunctionBeforeFrameFinalized()
353 if (MF.front().isLiveIn(SystemZ::R6D) && in processFunctionBeforeFrameFinalized()
403 MachineFunction &MF = *MBB.getParent(); in buildDefCFAReg() local
404 MachineModuleInfo &MMI = MF.getMMI(); in buildDefCFAReg()
407 unsigned CFIIndex = MF.addFrameInst( in buildDefCFAReg()
413 void SystemZFrameLowering::emitPrologue(MachineFunction &MF, in emitPrologue() argument
415 assert(&MF.front() == &MBB && "Shrink-wrapping not yet supported"); in emitPrologue()
416 const SystemZSubtarget &STI = MF.getSubtarget<SystemZSubtarget>(); in emitPrologue()
418 MachineFrameInfo &MFFrame = MF.getFrameInfo(); in emitPrologue()
420 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in emitPrologue()
422 MachineModuleInfo &MMI = MF.getMMI(); in emitPrologue()
425 bool HasFP = hasFP(MF); in emitPrologue()
431 if (MF.getFunction().getCallingConv() == CallingConv::GHC) { in emitPrologue()
464 unsigned CFIIndex = MF.addFrameInst(MCCFIInstruction::createOffset( in emitPrologue()
493 const unsigned ProbeSize = TLI.getStackProbeSize(MF); in emitPrologue()
497 MF.getSubtarget().getTargetLowering()->hasInlineStackProbe(MF)) { in emitPrologue()
506 bool StoreBackchain = MF.getFunction().hasFnAttribute("backchain"); in emitPrologue()
517 .addImm(getBackchainOffset(MF)).addReg(0); in emitPrologue()
533 for (auto I = std::next(MF.begin()), E = MF.end(); I != E; ++I) in emitPrologue()
561 getFrameIndexReference(MF, Save.getFrameIdx(), IgnoredFrameReg) in emitPrologue()
564 unsigned CFIIndex = MF.addFrameInst(MCCFIInstruction::createOffset( in emitPrologue()
576 void SystemZFrameLowering::emitEpilogue(MachineFunction &MF, in emitEpilogue() argument
580 static_cast<const SystemZInstrInfo *>(MF.getSubtarget().getInstrInfo()); in emitEpilogue()
581 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in emitEpilogue()
582 MachineFrameInfo &MFFrame = MF.getFrameInfo(); in emitEpilogue()
585 if (MF.getFunction().getCallingConv() == CallingConv::GHC) in emitEpilogue()
622 void SystemZFrameLowering::inlineStackProbe(MachineFunction &MF, in inlineStackProbe() argument
625 static_cast<const SystemZInstrInfo *>(MF.getSubtarget().getInstrInfo()); in inlineStackProbe()
626 const SystemZSubtarget &STI = MF.getSubtarget<SystemZSubtarget>(); in inlineStackProbe()
638 const unsigned ProbeSize = TLI.getStackProbeSize(MF); in inlineStackProbe()
656 MachineMemOperand *MMO = MF.getMachineMemOperand(MachinePointerInfo(), in inlineStackProbe()
664 bool StoreBackchain = MF.getFunction().hasFnAttribute("backchain"); in inlineStackProbe()
712 .addImm(getBackchainOffset(MF)).addReg(0); in inlineStackProbe()
722 bool SystemZFrameLowering::hasFP(const MachineFunction &MF) const { in hasFP()
723 return (MF.getTarget().Options.DisableFramePointerElim(MF) || in hasFP()
724 MF.getFrameInfo().hasVarSizedObjects() || in hasFP()
725 MF.getInfo<SystemZMachineFunctionInfo>()->getManipulatesSP()); in hasFP()
729 SystemZFrameLowering::hasReservedCallFrame(const MachineFunction &MF) const { in hasReservedCallFrame()
738 SystemZFrameLowering::getFrameIndexReference(const MachineFunction &MF, int FI, in getFrameIndexReference() argument
743 TargetFrameLowering::getFrameIndexReference(MF, FI, FrameReg); in getFrameIndexReference()
748 eliminateCallFramePseudoInstr(MachineFunction &MF, in eliminateCallFramePseudoInstr() argument
754 assert(hasReservedCallFrame(MF) && in eliminateCallFramePseudoInstr()
764 unsigned SystemZFrameLowering::getRegSpillOffset(MachineFunction &MF, in getRegSpillOffset() argument
766 bool IsVarArg = MF.getFunction().isVarArg(); in getRegSpillOffset()
767 bool BackChain = MF.getFunction().hasFnAttribute("backchain"); in getRegSpillOffset()
768 bool SoftFloat = MF.getSubtarget<SystemZSubtarget>().hasSoftFloat(); in getRegSpillOffset()
770 if (usePackedStack(MF) && !(IsVarArg && !SoftFloat)) { in getRegSpillOffset()
782 getOrCreateFramePointerSaveIndex(MachineFunction &MF) const { in getOrCreateFramePointerSaveIndex()
783 SystemZMachineFunctionInfo *ZFI = MF.getInfo<SystemZMachineFunctionInfo>(); in getOrCreateFramePointerSaveIndex()
786 MachineFrameInfo &MFFrame = MF.getFrameInfo(); in getOrCreateFramePointerSaveIndex()
787 int Offset = getBackchainOffset(MF) - SystemZMC::ELFCallFrameSize; in getOrCreateFramePointerSaveIndex()
794 bool SystemZFrameLowering::usePackedStack(MachineFunction &MF) const { in usePackedStack()
795 bool HasPackedStackAttr = MF.getFunction().hasFnAttribute("packed-stack"); in usePackedStack()
796 bool BackChain = MF.getFunction().hasFnAttribute("backchain"); in usePackedStack()
797 bool SoftFloat = MF.getSubtarget<SystemZSubtarget>().hasSoftFloat(); in usePackedStack()
800 bool CallConv = MF.getFunction().getCallingConv() != CallingConv::GHC; in usePackedStack()