Lines Matching refs:MF

25 bool RISCVFrameLowering::hasFP(const MachineFunction &MF) const {  in hasFP()
26 const TargetRegisterInfo *RegInfo = MF.getSubtarget().getRegisterInfo(); in hasFP()
28 const MachineFrameInfo &MFI = MF.getFrameInfo(); in hasFP()
29 return MF.getTarget().Options.DisableFramePointerElim(MF) || in hasFP()
30 RegInfo->needsStackRealignment(MF) || MFI.hasVarSizedObjects() || in hasFP()
35 void RISCVFrameLowering::determineFrameLayout(MachineFunction &MF) const { in determineFrameLayout()
36 MachineFrameInfo &MFI = MF.getFrameInfo(); in determineFrameLayout()
43 uint64_t StackAlign = RI->needsStackRealignment(MF) ? MFI.getMaxAlignment() in determineFrameLayout()
94 void RISCVFrameLowering::emitPrologue(MachineFunction &MF, in emitPrologue() argument
96 assert(&MF.front() == &MBB && "Shrink-wrapping not yet supported"); in emitPrologue()
98 MachineFrameInfo &MFI = MF.getFrameInfo(); in emitPrologue()
99 auto *RVFI = MF.getInfo<RISCVMachineFunctionInfo>(); in emitPrologue()
110 determineFrameLayout(MF); in emitPrologue()
133 if (hasFP(MF)) in emitPrologue()
138 void RISCVFrameLowering::emitEpilogue(MachineFunction &MF, in emitEpilogue() argument
142 MachineFrameInfo &MFI = MF.getFrameInfo(); in emitEpilogue()
143 auto *RVFI = MF.getInfo<RISCVMachineFunctionInfo>(); in emitEpilogue()
158 if (RI->needsStackRealignment(MF) || MFI.hasVarSizedObjects()) { in emitEpilogue()
159 assert(hasFP(MF) && "frame pointer should not have been eliminated"); in emitEpilogue()
169 int RISCVFrameLowering::getFrameIndexReference(const MachineFunction &MF, in getFrameIndexReference() argument
172 const MachineFrameInfo &MFI = MF.getFrameInfo(); in getFrameIndexReference()
173 const TargetRegisterInfo *RI = MF.getSubtarget().getRegisterInfo(); in getFrameIndexReference()
174 const auto *RVFI = MF.getInfo<RISCVMachineFunctionInfo>(); in getFrameIndexReference()
193 Offset += MF.getFrameInfo().getStackSize(); in getFrameIndexReference()
195 FrameReg = RI->getFrameRegister(MF); in getFrameIndexReference()
196 if (hasFP(MF)) in getFrameIndexReference()
199 Offset += MF.getFrameInfo().getStackSize(); in getFrameIndexReference()
204 void RISCVFrameLowering::determineCalleeSaves(MachineFunction &MF, in determineCalleeSaves() argument
207 TargetFrameLowering::determineCalleeSaves(MF, SavedRegs, RS); in determineCalleeSaves()
210 if (hasFP(MF)) { in determineCalleeSaves()
218 MachineFrameInfo &MFI = MF.getFrameInfo(); in determineCalleeSaves()
220 if (MF.getFunction().hasFnAttribute("interrupt") && MFI.hasCalls()) { in determineCalleeSaves()
232 if (MF.getSubtarget<RISCVSubtarget>().hasStdExtD() || in determineCalleeSaves()
233 MF.getSubtarget<RISCVSubtarget>().hasStdExtF()) { in determineCalleeSaves()
236 const MCPhysReg * Regs = MF.getRegInfo().getCalleeSavedRegs(); in determineCalleeSaves()
247 MachineFunction &MF, RegScavenger *RS) const { in processFunctionBeforeFrameFinalized() argument
248 const TargetRegisterInfo *RegInfo = MF.getSubtarget().getRegisterInfo(); in processFunctionBeforeFrameFinalized()
249 MachineFrameInfo &MFI = MF.getFrameInfo(); in processFunctionBeforeFrameFinalized()
257 if (!isInt<11>(MFI.estimateStackSize(MF))) { in processFunctionBeforeFrameFinalized()
267 bool RISCVFrameLowering::hasReservedCallFrame(const MachineFunction &MF) const { in hasReservedCallFrame()
268 return !MF.getFrameInfo().hasVarSizedObjects(); in hasReservedCallFrame()
273 MachineFunction &MF, MachineBasicBlock &MBB, in eliminateCallFramePseudoInstr() argument
278 if (!hasReservedCallFrame(MF)) { in eliminateCallFramePseudoInstr()