Home
last modified time | relevance | path

Searched refs:MachineFunction (Results 1 – 25 of 1087) sorted by relevance

12345678910>>...44

/llvm-project/llvm/lib/Target/X86/
H A DX86FrameLowering.h16 #include "llvm/CodeGen/MachineFunction.h"
57 void emitStackProbe(MachineFunction &MF, MachineBasicBlock &MBB,
60 std::optional<MachineFunction::DebugInstrOperandPair>
66 void inlineStackProbe(MachineFunction &MF,
78 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
79 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
81 void adjustForSegmentedStacks(MachineFunction &MF,
84 void adjustForHiPEPrologue(MachineFunction &MF,
87 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
91 assignCalleeSavedSpillSlots(MachineFunction
[all...]
H A DX86RegisterInfo.h55 unsigned getNumSupportedRegs(const MachineFunction &MF) const override;
71 const MachineFunction &MF) const override;
81 getPointerRegClass(const MachineFunction &MF,
93 getGPRsForTailCall(const MachineFunction &MF) const;
96 MachineFunction &MF) const override;
101 getCalleeSavedRegs(const MachineFunction* MF) const override;
104 const MCPhysReg *getIPRACSRegs(const MachineFunction *MF) const override;
106 getCalleeSavedRegsViaCopy(const MachineFunction *MF) const;
107 const uint32_t *getCallPreservedMask(const MachineFunction &MF,
119 BitVector getReservedRegs(const MachineFunction
[all...]
/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZFrameLowering.h32 const MachineFunction &MF) const override { in allocateScavengingFrameIndexesNearIncomingSP()
43 bool hasReservedCallFrame(const MachineFunction &MF) const override;
46 virtual unsigned getBackchainOffset(MachineFunction &MF) const = 0;
49 virtual int getReturnAddressOffset(MachineFunction &MF) const = 0;
52 virtual int getOrCreateFramePointerSaveIndex(MachineFunction &MF) const = 0;
69 assignCalleeSavedSpillSlots(MachineFunction &MF,
72 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
83 void processFunctionBeforeFrameFinalized(MachineFunction &MF,
85 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
86 void emitEpilogue(MachineFunction
[all...]
H A DSystemZRegisterInfo.h63 getCalleeSavedRegs(const MachineFunction *MF) const = 0;
66 virtual const uint32_t *getCallPreservedMask(const MachineFunction &MF,
94 const MCPhysReg *getCalleeSavedRegs(const MachineFunction *MF) const final;
96 const uint32_t *getCallPreservedMask(const MachineFunction &MF,
117 const MCPhysReg *getCalleeSavedRegs(const MachineFunction *MF) const final;
119 const uint32_t *getCallPreservedMask(const MachineFunction &MF,
138 getPointerRegClass(const MachineFunction &MF,
151 const MachineFunction &MF, const VirtRegMap *VRM,
155 bool requiresRegisterScavenging(const MachineFunction &MF) const override { in requiresRegisterScavenging()
158 bool requiresFrameIndexScavenging(const MachineFunction in requiresRegisterScavenging()
[all...]
/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64RegisterInfo.h21 class MachineFunction; variable
37 bool isReservedReg(const MachineFunction &MF, MCRegister Reg) const;
38 bool isStrictlyReservedReg(const MachineFunction &MF, MCRegister Reg) const;
39 bool isAnyArgRegReserved(const MachineFunction &MF) const;
40 void emitReservedArgRegCallError(const MachineFunction &MF) const;
42 void UpdateCustomCalleeSavedRegs(MachineFunction &MF) const;
43 void UpdateCustomCallPreservedMask(MachineFunction &MF,
47 const MCPhysReg *getCalleeSavedRegs(const MachineFunction *MF) const override;
48 const MCPhysReg *getDarwinCalleeSavedRegs(const MachineFunction *MF) const;
50 getCalleeSavedRegsViaCopy(const MachineFunction *M
[all...]
H A DAArch64FrameLowering.h31 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
36 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
37 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
39 bool enableCFIFixup(MachineFunction &MF) const override;
43 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
45 StackOffset getFrameIndexReferenceFromSP(const MachineFunction &MF,
47 StackOffset resolveFrameIndexReference(const MachineFunction &MF, int FI,
50 StackOffset resolveFrameOffsetReference(const MachineFunction &MF,
66 bool canUseRedZone(const MachineFunction &MF) const;
68 bool hasReservedCallFrame(const MachineFunction
[all...]
/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyFrameLowering.h37 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
41 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
42 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
44 bool hasReservedCallFrame(const MachineFunction &MF) const override;
46 DwarfFrameBase getDwarfFrameBase(const MachineFunction &MF) const override;
48 bool needsPrologForEH(const MachineFunction &MF) const;
51 void writeSPToGlobal(unsigned SrcReg, MachineFunction &MF,
58 static std::optional<unsigned> getLocalForStackObject(MachineFunction &MF,
61 static unsigned getSPReg(const MachineFunction &MF);
62 static unsigned getFPReg(const MachineFunction
[all...]
/llvm-project/llvm/include/llvm/CodeGen/
H A DTargetFrameLowering.h25 class MachineFunction;
152 const MachineFunction &MF) const;
160 virtual bool assignCalleeSavedSpillSlots(MachineFunction &MF, in assignCalleeSavedSpillSlots()
169 assignCalleeSavedSpillSlots(MachineFunction &MF, in assignCalleeSavedSpillSlots()
198 virtual bool enableShrinkWrapping(const MachineFunction &MF) const { in enableShrinkWrapping()
205 virtual bool enableStackSlotScavenging(const MachineFunction &MF) const { in enableStackSlotScavenging()
211 virtual bool enableCalleeSaveSkip(const MachineFunction &MF) const;
215 virtual void emitPrologue(MachineFunction &MF,
217 virtual void emitEpilogue(MachineFunction &MF,
232 virtual bool enableCFIFixup(MachineFunction
24 class MachineFunction; global() variable
[all...]
H A DTargetRegisterInfo.h38 class MachineFunction; variable
70 ArrayRef<MCPhysReg> (*OrderFunc)(const MachineFunction&);
196 /// The MachineFunction argument can be used to tune the allocatable
201 ArrayRef<MCPhysReg> getRawAllocationOrder(const MachineFunction &MF) const {
278 virtual unsigned getNumSupportedRegs(const MachineFunction &) const {
380 BitVector getAllocatableSet(const MachineFunction &MF,
385 ArrayRef<uint8_t> getRegisterCosts(const MachineFunction &MF) const {
501 getCalleeSavedRegs(const MachineFunction *MF) const = 0;
509 virtual const MCPhysReg *getIPRACSRegs(const MachineFunction *MF) const {
531 virtual const uint32_t *getCallPreservedMask(const MachineFunction
281 getNumSupportedRegs(const MachineFunction &) getNumSupportedRegs() argument
857 getLargestLegalSuperClass(const TargetRegisterClass * RC,const MachineFunction &) getLargestLegalSuperClass() argument
[all...]
H A DMachinePassManager.h26 #include "llvm/CodeGen/MachineFunction.h"
34 class MachineFunction; variable
36 extern template class AnalysisManager<MachineFunction>;
37 using MachineFunctionAnalysisManager = AnalysisManager<MachineFunction>;
44 MFPropsModifier(const PassT &P_, MachineFunction &MF_) : P(P_), MF(MF_) { in MFPropsModifier()
75 MachineFunction &MF;
104 MFPropsModifier(PassT &P, MachineFunction &MF) -> MFPropsModifier<PassT>;
126 MachineFunction>;
129 OuterAnalysisManagerProxy<ModuleAnalysisManager, MachineFunction>;
167 bool invalidate(MachineFunction
183 run(MachineFunction &,MachineFunctionAnalysisManager &) run() argument
[all...]
/llvm-project/llvm/lib/Target/ARM/
H A DARMFrameLowering.h19 class MachineFunction; variable
30 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
31 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
44 bool keepFramePointer(const MachineFunction &MF) const;
46 bool enableCalleeSaveSkip(const MachineFunction &MF) const override;
48 bool isFPReserved(const MachineFunction &MF) const;
49 bool requiresAAPCSFrameRecord(const MachineFunction &MF) const;
50 bool hasReservedCallFrame(const MachineFunction &MF) const override;
51 bool canSimplifyCallFramePseudos(const MachineFunction &MF) const override;
52 StackOffset getFrameIndexReference(const MachineFunction
[all...]
H A DARMBaseRegisterInfo.h64 const MCPhysReg *getCalleeSavedRegs(const MachineFunction *MF) const override; in isARMArea2Register()
66 getCalleeSavedRegsViaCopy(const MachineFunction *MF) const; in isARMArea2Register()
67 const uint32_t *getCallPreservedMask(const MachineFunction &MF, in isARMArea2Register()
70 const uint32_t *getTLSCallPreservedMask(const MachineFunction &MF) const; in isARMArea2Register()
71 const uint32_t *getSjLjDispatchPreservedMask(const MachineFunction &MF) const; in isARMArea2Register()
81 const uint32_t *getThisReturnPreservedMask(const MachineFunction &MF, in isSplitFPArea1Register()
85 getIntraCallClobberedRegs(const MachineFunction *MF) const override; in isSplitFPArea1Register()
87 BitVector getReservedRegs(const MachineFunction &MF) const override; in isSplitFPArea1Register()
88 bool isAsmClobberable(const MachineFunction &MF,
90 bool isInlineAsmReadOnlyReg(const MachineFunction in isSplitFPArea2Register()
[all...]
/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIFrameLowering.h24 void emitEntryFunctionPrologue(MachineFunction &MF,
26 void emitPrologue(MachineFunction &MF,
28 void emitEpilogue(MachineFunction &MF,
30 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
33 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
35 void determineCalleeSavesSGPR(MachineFunction &MF, BitVector &SavedRegs,
37 void determinePrologEpilogSGPRSaves(MachineFunction &MF, BitVector &SavedRegs,
39 void emitCSRSpillStores(MachineFunction &MF, MachineBasicBlock &MBB,
43 void emitCSRSpillRestores(MachineFunction &MF, MachineBasicBlock &MBB,
48 assignCalleeSavedSpillSlots(MachineFunction
[all...]
H A DSIRegisterInfo.h77 MCRegister getAlignedHighSGPRForRC(const MachineFunction &MF,
83 MCRegister reservedPrivateSegmentBufferReg(const MachineFunction &MF) const;
88 getMaxNumVectorRegs(const MachineFunction &MF) const;
90 BitVector getReservedRegs(const MachineFunction &MF) const override;
91 bool isAsmClobberable(const MachineFunction &MF,
94 const MCPhysReg *getCalleeSavedRegs(const MachineFunction *MF) const override;
95 const MCPhysReg *getCalleeSavedRegsViaCopy(const MachineFunction *MF) const;
96 const uint32_t *getCallPreservedMask(const MachineFunction &MF,
113 const MachineFunction &MF) const override;
115 Register getFrameRegister(const MachineFunction
[all...]
/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonFrameLowering.h26 class MachineFunction; variable
39 orderFrameObjects(const MachineFunction &MF,
45 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const
47 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const in emitEpilogue()
50 bool enableCalleeSaveSkip(const MachineFunction &MF) const override;
67 bool hasReservedCallFrame(const MachineFunction &MF) const override { in hasReservedCallFrame()
72 bool canSimplifyCallFramePseudos(const MachineFunction &MF) const override { in canSimplifyCallFramePseudos()
79 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
81 void processFunctionBeforeFrameFinalized(MachineFunction &MF,
83 void determineCalleeSaves(MachineFunction
[all...]
/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVFrameLowering.h26 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
27 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
29 uint64_t getStackSizeWithRVVPadding(const MachineFunction &MF) const;
31 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
34 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
37 void processFunctionBeforeFrameFinalized(MachineFunction &MF,
40 bool hasBP(const MachineFunction &MF) const;
42 bool hasReservedCallFrame(const MachineFunction &MF) const override;
44 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
47 bool assignCalleeSavedSpillSlots(MachineFunction
[all...]
/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCFrameLowering.h83 bool stackUpdateCanBeMoved(MachineFunction &MF) const;
91 uint64_t determineFrameLayoutAndUpdate(MachineFunction &MF,
96 * The MachineFunction object can be const in this case as it is not
99 uint64_t determineFrameLayout(const MachineFunction &MF,
105 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
106 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
107 void inlineStackProbe(MachineFunction &MF,
110 bool needsFP(const MachineFunction &MF) const;
111 void replaceFPWithRealFP(MachineFunction &MF) const;
113 void determineCalleeSaves(MachineFunction
[all...]
H A DPPCRegisterInfo.h76 getPointerRegClass(const MachineFunction &MF, unsigned Kind=0) const override;
79 MachineFunction &MF) const override;
83 const MachineFunction &MF) const override;
86 const MCPhysReg *getCalleeSavedRegs(const MachineFunction *MF) const override;
87 const uint32_t *getCallPreservedMask(const MachineFunction &MF,
93 BitVector getReservedRegs(const MachineFunction &MF) const override;
94 bool isAsmClobberable(const MachineFunction &MF,
97 const MachineFunction &MF) const override;
106 const MachineFunction &MF, const VirtRegMap *VRM,
110 bool requiresRegisterScavenging(const MachineFunction &MF) const override { in requiresRegisterScavenging()
[all …]
/llvm-project/llvm/unittests/MI/
H A DLiveIntervalTest.cpp5 #include "llvm/CodeGen/MachineFunction.h"
89 typedef std::function<void(MachineFunction&,AnalysisType&)> TestFx;
100 bool runOnMachineFunction(MachineFunction &MF) override { in runOnMachineFunction()
121 static MachineInstr &getMI(MachineFunction &MF, unsigned At, in getMI()
138 static void testHandleMove(MachineFunction &MF, LiveIntervals &LIS, in testHandleMove()
153 static void testHandleMoveIntoNewBundle(MachineFunction &MF, LiveIntervals &LIS, in testHandleMoveIntoNewBundle()
174 static void testSplitAt(MachineFunction &MF, LiveIntervals &LIS, in testSplitAt()
271 [](MachineFunction &MF, LiveIntervalsWrapperPass &LISWrapper) { in TEST()
283 [](MachineFunction &MF, LiveIntervalsWrapperPass &LIS) { in TEST()
296 [](MachineFunction in TEST()
[all...]
/llvm-project/llvm/lib/Target/VE/
H A DVEFrameLowering.h29 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
30 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
31 void emitPrologueInsns(MachineFunction &MF, MachineBasicBlock &MBB,
34 void emitEpilogueInsns(MachineFunction &MF, MachineBasicBlock &MBB,
39 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
42 bool hasBP(const MachineFunction &MF) const;
43 bool hasGOT(const MachineFunction &MF) const;
47 bool hasReservedCallFrame(const MachineFunction &MF) const override {
50 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs, in hasReservedCallFrame()
53 StackOffset getFrameIndexReference(const MachineFunction
[all...]
/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchFrameLowering.h31 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
32 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
34 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
37 void processFunctionBeforeFrameFinalized(MachineFunction &MF,
40 bool hasReservedCallFrame(const MachineFunction &MF) const override;
42 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
49 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
52 bool hasBP(const MachineFunction &MF) const;
54 uint64_t getFirstSPAdjustAmount(const MachineFunction &MF) const;
56 bool enableShrinkWrapping(const MachineFunction
[all...]
/llvm-project/llvm/lib/Target/Sparc/
H A DSparcFrameLowering.h29 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
30 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
33 eliminateCallFramePseudoInstr(MachineFunction &MF,
37 bool hasReservedCallFrame(const MachineFunction &MF) const override;
38 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
41 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
50 bool hasFPImpl(const MachineFunction &MF) const override;
54 void remapRegsForLeafProc(MachineFunction &MF) const;
57 bool isLeafProc(MachineFunction &MF) const;
61 void emitSPAdjustment(MachineFunction
[all...]
/llvm-project/llvm/lib/CodeGen/
H A DMachineFunction.cpp1 //===- MachineFunction.cpp ------------------------------------------------===//
15 #include "llvm/CodeGen/MachineFunction.h"
134 void MachineFunction::Delegate::anchor() {} in anchor()
147 // MachineFunction implementation
164 MachineFunction::MachineFunction(Function &F, const TargetMachine &Target, in MachineFunction() function in MachineFunction
172 void MachineFunction::handleInsertion(MachineInstr &MI) { in handleInsertion()
177 void MachineFunction::handleRemoval(MachineInstr &MI) { in handleRemoval()
182 void MachineFunction::handleChangeDesc(MachineInstr &MI, in handleChangeDesc()
188 void MachineFunction
[all...]
/llvm-project/llvm/lib/Target/M68k/
H A DM68kFrameLowering.h43 uint64_t calculateMaxStackAlign(const MachineFunction &MF) const;
64 unsigned getPSPSlotOffsetFromSP(const MachineFunction &MF) const;
78 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
82 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
85 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
94 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
103 assignCalleeSavedSpillSlots(MachineFunction &MF,
129 bool hasReservedCallFrame(const MachineFunction &MF) const override;
135 bool canSimplifyCallFramePseudos(const MachineFunction &MF) const override;
144 bool needsFrameIndexResolution(const MachineFunction
[all...]
/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYFrameLowering.h24 void determineFrameLayout(MachineFunction &MF) const;
36 void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
37 void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
39 StackOffset getFrameIndexReference(const MachineFunction &MF, int FI,
42 void determineCalleeSaves(MachineFunction &MF, BitVector &SavedRegs,
46 MachineFunction &MF, const TargetRegisterInfo *TRI, in assignCalleeSavedSpillSlots()
64 bool hasBP(const MachineFunction &MF) const;
66 bool hasReservedCallFrame(const MachineFunction &MF) const override;
69 eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB,
73 bool hasFPImpl(const MachineFunction
[all...]

12345678910>>...44