Lines Matching refs:MachineFunction
26 class MachineFunction;
39 orderFrameObjects(const MachineFunction &MF,
45 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const
47 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const
50 bool enableCalleeSaveSkip(const MachineFunction &MF) const override;
67 bool hasReservedCallFrame(const MachineFunction &MF) const override {
72 bool canSimplifyCallFramePseudos(const MachineFunction &MF) const override {
79 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
81 void processFunctionBeforeFrameFinalized(MachineFunction &MF,
83 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
90 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
107 bool assignCalleeSavedSpillSlots(MachineFunction &MF,
111 bool needsAligna(const MachineFunction &MF) const;
112 const MachineInstr *getAlignaInstr(const MachineFunction &MF) const;
114 void insertCFIInstructions(MachineFunction &MF) const;
117 bool hasFPImpl(const MachineFunction &MF) const override;
132 void updateEntryPaths(MachineFunction &MF, MachineBasicBlock &SaveB) const;
165 bool expandSpillMacros(MachineFunction &MF,
168 Register findPhysReg(MachineFunction &MF, HexagonBlockRanges::IndexRange &FIR,
172 void optimizeSpillSlots(MachineFunction &MF,
175 void findShrunkPrologEpilog(MachineFunction &MF, MachineBasicBlock *&PrologB,
180 bool shouldInlineCSR(const MachineFunction &MF, const CSIVect &CSI) const;
181 bool useSpillFunction(const MachineFunction &MF, const CSIVect &CSI) const;
182 bool useRestoreFunction(const MachineFunction &MF, const CSIVect &CSI) const;
183 bool mayOverflowFrameOffset(MachineFunction &MF) const;