LLVM  15.0.0git
Public Member Functions | List of all members
llvm::XCoreFunctionInfo Class Reference

XCoreFunctionInfo - This class is derived from MachineFunction private XCore target-specific information for each MachineFunction. More...

#include "Target/XCore/XCoreMachineFunctionInfo.h"

Inheritance diagram for llvm::XCoreFunctionInfo:
Inheritance graph
[legend]
Collaboration diagram for llvm::XCoreFunctionInfo:
Collaboration graph
[legend]

Public Member Functions

 XCoreFunctionInfo ()=default
 
 XCoreFunctionInfo (MachineFunction &MF)
 
MachineFunctionInfoclone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
 Make a functionally equivalent copy of this MachineFunctionInfo in MF. More...
 
 ~XCoreFunctionInfo () override=default
 
void setVarArgsFrameIndex (int off)
 
int getVarArgsFrameIndex () const
 
int createLRSpillSlot (MachineFunction &MF)
 
bool hasLRSpillSlot ()
 
int getLRSpillSlot () const
 
int createFPSpillSlot (MachineFunction &MF)
 
bool hasFPSpillSlot ()
 
int getFPSpillSlot () const
 
const intcreateEHSpillSlot (MachineFunction &MF)
 
bool hasEHSpillSlot ()
 
const intgetEHSpillSlot () const
 
void setReturnStackOffset (unsigned value)
 
unsigned getReturnStackOffset () const
 
bool isLargeFrame (const MachineFunction &MF) const
 
std::vector< std::pair< MachineBasicBlock::iterator, CalleeSavedInfo > > & getSpillLabels ()
 
- Public Member Functions inherited from llvm::MachineFunctionInfo
virtual ~MachineFunctionInfo ()
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::MachineFunctionInfo
template<typename Ty >
static Ty * create (BumpPtrAllocator &Allocator, MachineFunction &MF)
 Factory function: default behavior is to call new using the supplied allocator. More...
 
template<typename Ty >
static Ty * create (BumpPtrAllocator &Allocator, const Ty &MFI)
 

Detailed Description

XCoreFunctionInfo - This class is derived from MachineFunction private XCore target-specific information for each MachineFunction.

Definition at line 27 of file XCoreMachineFunctionInfo.h.

Constructor & Destructor Documentation

◆ XCoreFunctionInfo() [1/2]

llvm::XCoreFunctionInfo::XCoreFunctionInfo ( )
default

◆ XCoreFunctionInfo() [2/2]

llvm::XCoreFunctionInfo::XCoreFunctionInfo ( MachineFunction MF)
inlineexplicit

Definition at line 46 of file XCoreMachineFunctionInfo.h.

◆ ~XCoreFunctionInfo()

llvm::XCoreFunctionInfo::~XCoreFunctionInfo ( )
overridedefault

Member Function Documentation

◆ clone()

MachineFunctionInfo * XCoreFunctionInfo::clone ( BumpPtrAllocator Allocator,
MachineFunction DestMF,
const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &  Src2DstMBB 
) const
overridevirtual

Make a functionally equivalent copy of this MachineFunctionInfo in MF.

This requires remapping MachineBasicBlock references from the original parent to values in the new function. Targets may assume that virtual register and frame index values are preserved in the new function.

Reimplemented from llvm::MachineFunctionInfo.

Definition at line 18 of file XCoreMachineFunctionInfo.cpp.

References llvm::MachineFunction::cloneInfo().

◆ createEHSpillSlot()

const int * XCoreFunctionInfo::createEHSpillSlot ( MachineFunction MF)

◆ createFPSpillSlot()

int XCoreFunctionInfo::createFPSpillSlot ( MachineFunction MF)

◆ createLRSpillSlot()

int XCoreFunctionInfo::createLRSpillSlot ( MachineFunction MF)

◆ getEHSpillSlot()

const int* llvm::XCoreFunctionInfo::getEHSpillSlot ( ) const
inline

Definition at line 74 of file XCoreMachineFunctionInfo.h.

References assert().

Referenced by GetEHSpillList().

◆ getFPSpillSlot()

int llvm::XCoreFunctionInfo::getFPSpillSlot ( ) const
inline

Definition at line 67 of file XCoreMachineFunctionInfo.h.

References assert().

Referenced by GetSpillList().

◆ getLRSpillSlot()

int llvm::XCoreFunctionInfo::getLRSpillSlot ( ) const
inline

◆ getReturnStackOffset()

unsigned llvm::XCoreFunctionInfo::getReturnStackOffset ( ) const
inline

Definition at line 85 of file XCoreMachineFunctionInfo.h.

References assert().

◆ getSpillLabels()

std::vector<std::pair<MachineBasicBlock::iterator, CalleeSavedInfo> >& llvm::XCoreFunctionInfo::getSpillLabels ( )
inline

◆ getVarArgsFrameIndex()

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

Definition at line 56 of file XCoreMachineFunctionInfo.h.

◆ hasEHSpillSlot()

bool llvm::XCoreFunctionInfo::hasEHSpillSlot ( )
inline

◆ hasFPSpillSlot()

bool llvm::XCoreFunctionInfo::hasFPSpillSlot ( )
inline

Definition at line 66 of file XCoreMachineFunctionInfo.h.

◆ hasLRSpillSlot()

bool llvm::XCoreFunctionInfo::hasLRSpillSlot ( )
inline

◆ isLargeFrame()

bool XCoreFunctionInfo::isLargeFrame ( const MachineFunction MF) const

◆ setReturnStackOffset()

void llvm::XCoreFunctionInfo::setReturnStackOffset ( unsigned  value)
inline

Definition at line 79 of file XCoreMachineFunctionInfo.h.

References assert().

◆ setVarArgsFrameIndex()

void llvm::XCoreFunctionInfo::setVarArgsFrameIndex ( int  off)
inline

Definition at line 55 of file XCoreMachineFunctionInfo.h.


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