Home | History | Annotate | Download | only in AArch64

Lines Matching refs:MF

47 void AArch64FrameLowering::emitPrologue(MachineFunction &MF) const {
49 MF.getInfo<AArch64MachineFunctionInfo>();
50 MachineBasicBlock &MBB = MF.front();
52 MachineFrameInfo *MFI = MF.getFrameInfo();
53 const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
56 MachineModuleInfo &MMI = MF.getMMI();
59 || MF.getFunction()->needsUnwindTableEntry();
108 bool FPNeedsSetting = hasFP(MF);
162 if (!hasFP(MF) && NumResidualBytes) {
193 AArch64FrameLowering::emitEpilogue(MachineFunction &MF,
196 MF.getInfo<AArch64MachineFunctionInfo>();
200 const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
201 MachineFrameInfo &MFI = *MF.getFrameInfo();
308 if (MF.getFrameInfo()->hasVarSizedObjects()) {
320 AArch64FrameLowering::resolveFrameIndexReference(MachineFunction &MF,
326 MF.getInfo<AArch64MachineFunctionInfo>();
327 MachineFrameInfo *MFI = MF.getFrameInfo();
341 } else if (useFPForAddressing(MF)) {
354 AArch64FrameLowering::processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
357 static_cast<const AArch64RegisterInfo *>(MF.getTarget().getRegisterInfo());
358 MachineFrameInfo *MFI = MF.getFrameInfo();
360 *static_cast<const AArch64InstrInfo *>(MF.getTarget().getInstrInfo());
362 if (hasFP(MF)) {
363 MF.getRegInfo().setPhysRegUsed(AArch64::X29);
364 MF.getRegInfo().setPhysRegUsed(AArch64::X30);
372 MFI->estimateStackSize(MF) >= TII.estimateRSStackLimit(MF)
374 || (MFI->adjustsStack() && !hasReservedCallFrame(MF));
386 !MF.getRegInfo().isPhysRegUsed(CSRegs[i])) {
393 MF.getRegInfo().setPhysRegUsed(ExtraReg);
431 MachineFunction &MF = *MBB.getParent();
432 MachineFrameInfo &MFI = *MF.getFrameInfo();
433 const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
502 MF.getMachineMemOperand(MachinePointerInfo::getFixedStack(FrameIdx),
565 AArch64FrameLowering::hasFP(const MachineFunction &MF) const {
566 const MachineFrameInfo *MFI = MF.getFrameInfo();
567 const TargetRegisterInfo *RI = MF.getTarget().getRegisterInfo();
573 if (MF.getTarget().Options.DisableFramePointerElim(MF) && MFI->hasCalls())
578 return (RI->needsStackRealignment(MF) ||
584 AArch64FrameLowering::useFPForAddressing(const MachineFunction &MF) const {
585 return MF.getFrameInfo()->hasVarSizedObjects();
589 AArch64FrameLowering::hasReservedCallFrame(const MachineFunction &MF) const {
590 const MachineFrameInfo *MFI = MF.getFrameInfo();
594 return !(hasFP(MF) && MFI->hasVarSizedObjects());
599 MachineFunction &MF,
603 *static_cast<const AArch64InstrInfo *>(MF.getTarget().getInstrInfo());
609 if (!hasReservedCallFrame(MF)) {