LLVM: llvm::ARMFunctionInfo Class Reference (original) (raw)

ARMFunctionInfo - This class is derived from MachineFunctionInfo and contains private ARM-specific information for each MachineFunction. More...

#include "[Target/ARM/ARMMachineFunctionInfo.h](ARMMachineFunctionInfo%5F8h%5Fsource.html)"

Public Member Functions
ARMFunctionInfo ()=default
ARMFunctionInfo (const Function &F, const ARMSubtarget *STI)
MachineFunctionInfo * clone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
Make a functionally equivalent copy of this MachineFunctionInfo in MF.
bool isThumbFunction () const
bool isThumb1OnlyFunction () const
bool isThumb2Function () const
bool isCmseNSEntryFunction () const
bool isCmseNSCallFunction () const
unsigned getArgRegsSaveSize () const
void setArgRegsSaveSize (unsigned s)
unsigned getReturnRegsCount () const
void setReturnRegsCount (unsigned s)
bool hasStackFrame () const
void setHasStackFrame (bool s)
bool shouldRestoreSPFromFP () const
void setShouldRestoreSPFromFP (bool s)
bool isLRSpilled () const
void setLRIsSpilled (bool s)
unsigned getFramePtrSpillOffset () const
void setFramePtrSpillOffset (unsigned o)
unsigned getNumAlignedDPRCS2Regs () const
void setNumAlignedDPRCS2Regs (unsigned n)
unsigned getGPRCalleeSavedArea1Offset () const
unsigned getGPRCalleeSavedArea2Offset () const
unsigned getDPRCalleeSavedArea1Offset () const
void setGPRCalleeSavedArea1Offset (unsigned o)
void setGPRCalleeSavedArea2Offset (unsigned o)
void setDPRCalleeSavedArea1Offset (unsigned o)
unsigned getFPCXTSaveAreaSize () const
unsigned getFrameRecordSavedAreaSize () const
unsigned getGPRCalleeSavedArea1Size () const
unsigned getGPRCalleeSavedArea2Size () const
unsigned getFPStatusSavesSize () const
unsigned getDPRCalleeSavedGapSize () const
unsigned getDPRCalleeSavedArea1Size () const
unsigned getGPRCalleeSavedArea3Size () const
void setFPCXTSaveAreaSize (unsigned s)
void setFrameRecordSavedAreaSize (unsigned s)
void setGPRCalleeSavedArea1Size (unsigned s)
void setGPRCalleeSavedArea2Size (unsigned s)
void setFPStatusSavesSize (unsigned s)
void setDPRCalleeSavedGapSize (unsigned s)
void setDPRCalleeSavedArea1Size (unsigned s)
void setGPRCalleeSavedArea3Size (unsigned s)
unsigned getArgumentStackSize () const
void setArgumentStackSize (unsigned size)
unsigned getArgumentStackToRestore () const
void setArgumentStackToRestore (unsigned v)
void initPICLabelUId (unsigned UId)
unsigned getNumPICLabels () const
unsigned createPICLabelUId ()
int getVarArgsFrameIndex () const
void setVarArgsFrameIndex (int Index)
bool hasITBlocks () const
void setHasITBlocks (bool h)
bool isSplitCSR () const
void setIsSplitCSR (bool s)
void recordCPEClone (unsigned CPIdx, unsigned CPCloneIdx)
unsigned getOriginalCPIdx (unsigned CloneIdx) const
DenseMap< constMachineBasicBlock *, unsigned >::iterator getCoalescedWeight (MachineBasicBlock *MBB)
void markGlobalAsPromotedToConstantPool (const GlobalVariable *GV)
Indicate to the backend that GV has had its storage changed to inside a constant pool.
SmallPtrSet< const GlobalVariable *, 2 > & getGlobalsPromotedToConstantPool ()
int getPromotedConstpoolIncrease () const
void setPromotedConstpoolIncrease (int Sz)
void setPreservesR0 ()
bool getPreservesR0 () const
bool shouldSignReturnAddress () const
bool shouldSignReturnAddress (bool SpillsLR) const
bool branchTargetEnforcement () const
void initializeBaseYamlFields (const yaml::ARMFunctionInfo &YamlMFI)
Public Member Functions inherited from llvm::MachineFunctionInfo
virtual ~MachineFunctionInfo ()
Additional Inherited Members
Static Public Member Functions inherited from llvm::MachineFunctionInfo
template<typename FuncInfoTy, typename SubtargetTy = TargetSubtargetInfo>
static FuncInfoTy * create (BumpPtrAllocator &Allocator, const Function &F, const SubtargetTy *STI)
Factory function: default behavior is to call new using the supplied allocator.
template
static Ty * create (BumpPtrAllocator &Allocator, const Ty &MFI)

ARMFunctionInfo - This class is derived from MachineFunctionInfo and contains private ARM-specific information for each MachineFunction.

Definition at line 33 of file ARMMachineFunctionInfo.h.

llvm::ARMFunctionInfo::ARMFunctionInfo ( ) default

ARMFunctionInfo() [2/2]

branchTargetEnforcement()

bool llvm::ARMFunctionInfo::branchTargetEnforcement ( ) const inline

clone()

createPICLabelUId()

unsigned llvm::ARMFunctionInfo::createPICLabelUId ( ) inline

getArgRegsSaveSize()

unsigned llvm::ARMFunctionInfo::getArgRegsSaveSize ( ) const inline

getArgumentStackSize()

unsigned llvm::ARMFunctionInfo::getArgumentStackSize ( ) const inline

getArgumentStackToRestore()

unsigned llvm::ARMFunctionInfo::getArgumentStackToRestore ( ) const inline

getCoalescedWeight()

getDPRCalleeSavedArea1Offset()

unsigned llvm::ARMFunctionInfo::getDPRCalleeSavedArea1Offset ( ) const inline

getDPRCalleeSavedArea1Size()

unsigned llvm::ARMFunctionInfo::getDPRCalleeSavedArea1Size ( ) const inline

getDPRCalleeSavedGapSize()

unsigned llvm::ARMFunctionInfo::getDPRCalleeSavedGapSize ( ) const inline

getFPCXTSaveAreaSize()

unsigned llvm::ARMFunctionInfo::getFPCXTSaveAreaSize ( ) const inline

getFPStatusSavesSize()

unsigned llvm::ARMFunctionInfo::getFPStatusSavesSize ( ) const inline

getFramePtrSpillOffset()

unsigned llvm::ARMFunctionInfo::getFramePtrSpillOffset ( ) const inline

getFrameRecordSavedAreaSize()

unsigned llvm::ARMFunctionInfo::getFrameRecordSavedAreaSize ( ) const inline

getGlobalsPromotedToConstantPool()

getGPRCalleeSavedArea1Offset()

unsigned llvm::ARMFunctionInfo::getGPRCalleeSavedArea1Offset ( ) const inline

getGPRCalleeSavedArea1Size()

unsigned llvm::ARMFunctionInfo::getGPRCalleeSavedArea1Size ( ) const inline

getGPRCalleeSavedArea2Offset()

unsigned llvm::ARMFunctionInfo::getGPRCalleeSavedArea2Offset ( ) const inline

getGPRCalleeSavedArea2Size()

unsigned llvm::ARMFunctionInfo::getGPRCalleeSavedArea2Size ( ) const inline

getGPRCalleeSavedArea3Size()

unsigned llvm::ARMFunctionInfo::getGPRCalleeSavedArea3Size ( ) const inline

getNumAlignedDPRCS2Regs()

unsigned llvm::ARMFunctionInfo::getNumAlignedDPRCS2Regs ( ) const inline

getNumPICLabels()

unsigned llvm::ARMFunctionInfo::getNumPICLabels ( ) const inline

getOriginalCPIdx()

unsigned llvm::ARMFunctionInfo::getOriginalCPIdx ( unsigned CloneIdx) const inline

getPreservesR0()

bool llvm::ARMFunctionInfo::getPreservesR0 ( ) const inline

getPromotedConstpoolIncrease()

int llvm::ARMFunctionInfo::getPromotedConstpoolIncrease ( ) const inline

getReturnRegsCount()

unsigned llvm::ARMFunctionInfo::getReturnRegsCount ( ) const inline

getVarArgsFrameIndex()

int llvm::ARMFunctionInfo::getVarArgsFrameIndex ( ) const inline

hasITBlocks()

bool llvm::ARMFunctionInfo::hasITBlocks ( ) const inline

hasStackFrame()

bool llvm::ARMFunctionInfo::hasStackFrame ( ) const inline

initializeBaseYamlFields()

initPICLabelUId()

void llvm::ARMFunctionInfo::initPICLabelUId ( unsigned UId) inline

isCmseNSCallFunction()

bool llvm::ARMFunctionInfo::isCmseNSCallFunction ( ) const inline

isCmseNSEntryFunction()

bool llvm::ARMFunctionInfo::isCmseNSEntryFunction ( ) const inline

isLRSpilled()

bool llvm::ARMFunctionInfo::isLRSpilled ( ) const inline

isSplitCSR()

bool llvm::ARMFunctionInfo::isSplitCSR ( ) const inline

isThumb1OnlyFunction()

bool llvm::ARMFunctionInfo::isThumb1OnlyFunction ( ) const inline

Definition at line 169 of file ARMMachineFunctionInfo.h.

Referenced by canSpillOnFrameIndexAccess(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::ARMBaseRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Restores(), emitAlignedDPRCS2Spills(), emitAligningInstructions(), llvm::ARMFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitPrologue(), getMaxFPOffset(), llvm::ARMBaseRegisterInfo::hasBasePointer(), llvm::ARMBaseInstrInfo::isFunctionSafeToOutlineFrom(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::needsFrameBaseReg(), and llvm::ARMBaseRegisterInfo::resolveFrameIndex().

isThumb2Function()

bool llvm::ARMFunctionInfo::isThumb2Function ( ) const inline

isThumbFunction()

bool llvm::ARMFunctionInfo::isThumbFunction ( ) const inline

Definition at line 168 of file ARMMachineFunctionInfo.h.

Referenced by llvm::ARMBasicBlockUtils::ARMBasicBlockUtils(), llvm::ARMFrameLowering::determineCalleeSaves(), llvm::ARMBaseRegisterInfo::eliminateFrameIndex(), llvm::ThumbRegisterInfo::eliminateFrameIndex(), emitAlignedDPRCS2Restores(), emitAlignedDPRCS2Spills(), emitAligningInstructions(), llvm::ARMFrameLowering::emitEpilogue(), llvm::ARMFrameLowering::emitPrologue(), llvm::ARMBaseInstrInfo::getInstSizeInBytes(), llvm::ARMBaseInstrInfo::insertBranch(), llvm::ARMBaseRegisterInfo::materializeFrameBaseRegister(), llvm::ARMBaseRegisterInfo::needsFrameBaseReg(), llvm::ARMBaseRegisterInfo::resolveFrameIndex(), llvm::ARMFrameLowering::ResolveFrameIndexReference(), llvm::ARMFrameLowering::restoreCalleeSavedRegisters(), and llvm::ARMFrameLowering::spillCalleeSavedRegisters().

markGlobalAsPromotedToConstantPool()

void llvm::ARMFunctionInfo::markGlobalAsPromotedToConstantPool ( const GlobalVariable * GV) inline

recordCPEClone()

void llvm::ARMFunctionInfo::recordCPEClone ( unsigned CPIdx, unsigned CPCloneIdx ) inline

setArgRegsSaveSize()

void llvm::ARMFunctionInfo::setArgRegsSaveSize ( unsigned s) inline

setArgumentStackSize()

void llvm::ARMFunctionInfo::setArgumentStackSize ( unsigned size) inline

setArgumentStackToRestore()

void llvm::ARMFunctionInfo::setArgumentStackToRestore ( unsigned v) inline

setDPRCalleeSavedArea1Offset()

void llvm::ARMFunctionInfo::setDPRCalleeSavedArea1Offset ( unsigned o) inline

setDPRCalleeSavedArea1Size()

void llvm::ARMFunctionInfo::setDPRCalleeSavedArea1Size ( unsigned s) inline

setDPRCalleeSavedGapSize()

void llvm::ARMFunctionInfo::setDPRCalleeSavedGapSize ( unsigned s) inline

setFPCXTSaveAreaSize()

void llvm::ARMFunctionInfo::setFPCXTSaveAreaSize ( unsigned s) inline

setFPStatusSavesSize()

void llvm::ARMFunctionInfo::setFPStatusSavesSize ( unsigned s) inline

setFramePtrSpillOffset()

void llvm::ARMFunctionInfo::setFramePtrSpillOffset ( unsigned o) inline

setFrameRecordSavedAreaSize()

void llvm::ARMFunctionInfo::setFrameRecordSavedAreaSize ( unsigned s) inline

setGPRCalleeSavedArea1Offset()

void llvm::ARMFunctionInfo::setGPRCalleeSavedArea1Offset ( unsigned o) inline

setGPRCalleeSavedArea1Size()

void llvm::ARMFunctionInfo::setGPRCalleeSavedArea1Size ( unsigned s) inline

setGPRCalleeSavedArea2Offset()

void llvm::ARMFunctionInfo::setGPRCalleeSavedArea2Offset ( unsigned o) inline

setGPRCalleeSavedArea2Size()

void llvm::ARMFunctionInfo::setGPRCalleeSavedArea2Size ( unsigned s) inline

setGPRCalleeSavedArea3Size()

void llvm::ARMFunctionInfo::setGPRCalleeSavedArea3Size ( unsigned s) inline

setHasITBlocks()

void llvm::ARMFunctionInfo::setHasITBlocks ( bool h) inline

setHasStackFrame()

void llvm::ARMFunctionInfo::setHasStackFrame ( bool s) inline

setIsSplitCSR()

void llvm::ARMFunctionInfo::setIsSplitCSR ( bool s) inline

setLRIsSpilled()

void llvm::ARMFunctionInfo::setLRIsSpilled ( bool s) inline

setNumAlignedDPRCS2Regs()

void llvm::ARMFunctionInfo::setNumAlignedDPRCS2Regs ( unsigned n) inline

setPreservesR0()

void llvm::ARMFunctionInfo::setPreservesR0 ( ) inline

setPromotedConstpoolIncrease()

void llvm::ARMFunctionInfo::setPromotedConstpoolIncrease ( int Sz) inline

setReturnRegsCount()

void llvm::ARMFunctionInfo::setReturnRegsCount ( unsigned s) inline

setShouldRestoreSPFromFP()

void llvm::ARMFunctionInfo::setShouldRestoreSPFromFP ( bool s) inline

setVarArgsFrameIndex()

void llvm::ARMFunctionInfo::setVarArgsFrameIndex ( int Index) inline

shouldRestoreSPFromFP()

bool llvm::ARMFunctionInfo::shouldRestoreSPFromFP ( ) const inline

shouldSignReturnAddress() [1/2]

bool llvm::ARMFunctionInfo::shouldSignReturnAddress ( ) const inline

shouldSignReturnAddress() [2/2]

bool llvm::ARMFunctionInfo::shouldSignReturnAddress ( bool SpillsLR) const inline

EHPrologueOffsetInRegs

EHPrologueRemappedRegs


The documentation for this class was generated from the following files: