14#ifndef LLVM_LIB_TARGET_M68K_M68KMACHINEFUNCTION_H
15#define LLVM_LIB_TARGET_M68K_M68KMACHINEFUNCTION_H
27 signed char RestoreBasePointerOffset = 0;
30 unsigned CalleeSavedFrameSize = 0;
35 unsigned BytesToPopOnReturn = 0;
38 int ReturnAddrIndex = 0;
42 int TailCallReturnAddrDelta = 0;
46 unsigned GlobalBaseReg = 0;
49 int VarArgsFrameIndex = 0;
53 bool HasPushSequences =
false;
58 unsigned SRetReturnReg = 0;
66 unsigned ArgumentStackSize = 0;
109 return ForwardedMustTailRegParms;
113 virtual void anchor();
Allocate memory in an ever growing pool, as if by bump-pointer.
void setVarArgsFrameIndex(int Index)
MachineFunctionInfo * clone(BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
Make a functionally equivalent copy of this MachineFunctionInfo in MF.
void setSRetReturnReg(unsigned Reg)
SmallVectorImpl< ForwardedRegister > & getForwardedMustTailRegParms()
M68kMachineFunctionInfo(const Function &F, const TargetSubtargetInfo *STI)
int getRestoreBasePointerOffset() const
unsigned getCalleeSavedFrameSize() const
bool getRestoreBasePointer() const
void setBytesToPopOnReturn(unsigned bytes)
unsigned getBytesToPopOnReturn() const
unsigned getArgumentStackSize() const
unsigned getSRetReturnReg() const
void setRestoreBasePointer(const MachineFunction *MF)
void setRAIndex(int Index)
void setCalleeSavedFrameSize(unsigned bytes)
int getVarArgsFrameIndex() const
void setGlobalBaseReg(unsigned Reg)
bool getHasPushSequences() const
void setHasPushSequences(bool HasPush)
void setArgumentStackSize(unsigned size)
unsigned getGlobalBaseReg() const
void setTCReturnAddrDelta(int delta)
int getTCReturnAddrDelta() const
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
TargetSubtargetInfo - Generic base class for all target subtargets.
This is an optimization pass for GlobalISel generic memory operations.
auto size(R &&Range, std::enable_if_t< std::is_base_of< std::random_access_iterator_tag, typename std::iterator_traits< decltype(Range.begin())>::iterator_category >::value, void > *=nullptr)
Get the size of a range.
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-speci...