LLVM  6.0.0svn
Public Member Functions | List of all members
llvm::PPCFunctionInfo Class Reference

PPCFunctionInfo - This class is derived from MachineFunction private PowerPC target-specific information for each MachineFunction. More...

#include "Target/PowerPC/PPCMachineFunctionInfo.h"

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

Public Member Functions

 PPCFunctionInfo (MachineFunction &MF)
 
int getFramePointerSaveIndex () const
 
void setFramePointerSaveIndex (int Idx)
 
int getReturnAddrSaveIndex () const
 
void setReturnAddrSaveIndex (int idx)
 
int getBasePointerSaveIndex () const
 
void setBasePointerSaveIndex (int Idx)
 
int getPICBasePointerSaveIndex () const
 
void setPICBasePointerSaveIndex (int Idx)
 
unsigned getMinReservedArea () const
 
void setMinReservedArea (unsigned size)
 
int getTailCallSPDelta () const
 
void setTailCallSPDelta (int size)
 
void setMustSaveLR (bool U)
 MustSaveLR - This is set when the prolog/epilog inserter does its initial scan of the function. More...
 
bool mustSaveLR () const
 
void setHasSpills ()
 
bool hasSpills () const
 
void setHasNonRISpills ()
 
bool hasNonRISpills () const
 
void setSpillsCR ()
 
bool isCRSpilled () const
 
void setSpillsVRSAVE ()
 
bool isVRSAVESpilled () const
 
void setLRStoreRequired ()
 
bool isLRStoreRequired () const
 
void setUsesTOCBasePtr ()
 
bool usesTOCBasePtr () const
 
void setHasFastCall ()
 
bool hasFastCall () const
 
int getVarArgsFrameIndex () const
 
void setVarArgsFrameIndex (int Index)
 
int getVarArgsStackOffset () const
 
void setVarArgsStackOffset (int Offset)
 
unsigned getVarArgsNumGPR () const
 
void setVarArgsNumGPR (unsigned Num)
 
unsigned getVarArgsNumFPR () const
 
void setVarArgsNumFPR (unsigned Num)
 
void addLiveInAttr (unsigned VReg, ISD::ArgFlagsTy Flags)
 This function associates attributes for each live-in virtual register. More...
 
bool isLiveInSExt (unsigned VReg) const
 This function returns true if the spesified vreg is a live-in register and sign-extended. More...
 
bool isLiveInZExt (unsigned VReg) const
 This function returns true if the spesified vreg is a live-in register and zero-extended. More...
 
int getCRSpillFrameIndex () const
 
void setCRSpillFrameIndex (int idx)
 
const SmallVectorImpl< unsigned > & getMustSaveCRs () const
 
void addMustSaveCR (unsigned Reg)
 
void setUsesPICBase (bool uses)
 
bool usesPICBase () const
 
bool isSplitCSR () const
 
void setIsSplitCSR (bool s)
 
MCSymbolgetPICOffsetSymbol () const
 
MCSymbolgetGlobalEPSymbol () const
 
MCSymbolgetLocalEPSymbol () const
 
MCSymbolgetTOCOffsetSymbol () const
 
- 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...
 

Detailed Description

PPCFunctionInfo - This class is derived from MachineFunction private PowerPC target-specific information for each MachineFunction.

Definition at line 25 of file PPCMachineFunctionInfo.h.

Constructor & Destructor Documentation

◆ PPCFunctionInfo()

llvm::PPCFunctionInfo::PPCFunctionInfo ( MachineFunction MF)
inlineexplicit

Definition at line 122 of file PPCMachineFunctionInfo.h.

Member Function Documentation

◆ addLiveInAttr()

void llvm::PPCFunctionInfo::addLiveInAttr ( unsigned  VReg,
ISD::ArgFlagsTy  Flags 
)
inline

This function associates attributes for each live-in virtual register.

Definition at line 184 of file PPCMachineFunctionInfo.h.

References isLiveInSExt(), and isLiveInZExt().

Referenced by EnsureStackAlignment().

◆ addMustSaveCR()

void llvm::PPCFunctionInfo::addMustSaveCR ( unsigned  Reg)
inline

◆ getBasePointerSaveIndex()

int llvm::PPCFunctionInfo::getBasePointerSaveIndex ( ) const
inline

◆ getCRSpillFrameIndex()

int llvm::PPCFunctionInfo::getCRSpillFrameIndex ( ) const
inline

◆ getFramePointerSaveIndex()

int llvm::PPCFunctionInfo::getFramePointerSaveIndex ( ) const
inline

◆ getGlobalEPSymbol()

MCSymbol * PPCFunctionInfo::getGlobalEPSymbol ( ) const

◆ getLocalEPSymbol()

MCSymbol * PPCFunctionInfo::getLocalEPSymbol ( ) const

◆ getMinReservedArea()

unsigned llvm::PPCFunctionInfo::getMinReservedArea ( ) const
inline

◆ getMustSaveCRs()

const SmallVectorImpl<unsigned>& llvm::PPCFunctionInfo::getMustSaveCRs ( ) const
inline

◆ getPICBasePointerSaveIndex()

int llvm::PPCFunctionInfo::getPICBasePointerSaveIndex ( ) const
inline

◆ getPICOffsetSymbol()

MCSymbol * PPCFunctionInfo::getPICOffsetSymbol ( ) const

◆ getReturnAddrSaveIndex()

int llvm::PPCFunctionInfo::getReturnAddrSaveIndex ( ) const
inline

Definition at line 127 of file PPCMachineFunctionInfo.h.

Referenced by PrepareCall().

◆ getTailCallSPDelta()

int llvm::PPCFunctionInfo::getTailCallSPDelta ( ) const
inline

◆ getTOCOffsetSymbol()

MCSymbol * PPCFunctionInfo::getTOCOffsetSymbol ( ) const

◆ getVarArgsFrameIndex()

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

◆ getVarArgsNumFPR()

unsigned llvm::PPCFunctionInfo::getVarArgsNumFPR ( ) const
inline

◆ getVarArgsNumGPR()

unsigned llvm::PPCFunctionInfo::getVarArgsNumGPR ( ) const
inline

◆ getVarArgsStackOffset()

int llvm::PPCFunctionInfo::getVarArgsStackOffset ( ) const
inline

◆ hasFastCall()

bool llvm::PPCFunctionInfo::hasFastCall ( ) const
inline

Definition at line 169 of file PPCMachineFunctionInfo.h.

Referenced by llvm::PPCFrameLowering::emitEpilogue().

◆ hasNonRISpills()

bool llvm::PPCFunctionInfo::hasNonRISpills ( ) const
inline

Definition at line 154 of file PPCMachineFunctionInfo.h.

Referenced by hasNonRISpills().

◆ hasSpills()

bool llvm::PPCFunctionInfo::hasSpills ( ) const
inline

Definition at line 151 of file PPCMachineFunctionInfo.h.

Referenced by hasSpills().

◆ isCRSpilled()

bool llvm::PPCFunctionInfo::isCRSpilled ( ) const
inline

Definition at line 157 of file PPCMachineFunctionInfo.h.

Referenced by spillsCR().

◆ isLiveInSExt()

bool PPCFunctionInfo::isLiveInSExt ( unsigned  VReg) const

This function returns true if the spesified vreg is a live-in register and sign-extended.

Definition at line 47 of file PPCMachineFunctionInfo.cpp.

Referenced by addLiveInAttr(), and llvm::PPCInstrInfo::isSignOrZeroExtended().

◆ isLiveInZExt()

bool PPCFunctionInfo::isLiveInZExt ( unsigned  VReg) const

This function returns true if the spesified vreg is a live-in register and zero-extended.

Definition at line 54 of file PPCMachineFunctionInfo.cpp.

Referenced by addLiveInAttr(), and llvm::PPCInstrInfo::isSignOrZeroExtended().

◆ isLRStoreRequired()

bool llvm::PPCFunctionInfo::isLRStoreRequired ( ) const
inline

Definition at line 163 of file PPCMachineFunctionInfo.h.

Referenced by MustSaveLR().

◆ isSplitCSR()

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

◆ isVRSAVESpilled()

bool llvm::PPCFunctionInfo::isVRSAVESpilled ( ) const
inline

Definition at line 160 of file PPCMachineFunctionInfo.h.

Referenced by spillsVRSAVE().

◆ mustSaveLR()

bool llvm::PPCFunctionInfo::mustSaveLR ( ) const
inline

◆ setBasePointerSaveIndex()

void llvm::PPCFunctionInfo::setBasePointerSaveIndex ( int  Idx)
inline

◆ setCRSpillFrameIndex()

void llvm::PPCFunctionInfo::setCRSpillFrameIndex ( int  idx)
inline

◆ setFramePointerSaveIndex()

void llvm::PPCFunctionInfo::setFramePointerSaveIndex ( int  Idx)
inline

◆ setHasFastCall()

void llvm::PPCFunctionInfo::setHasFastCall ( )
inline

Definition at line 168 of file PPCMachineFunctionInfo.h.

◆ setHasNonRISpills()

void llvm::PPCFunctionInfo::setHasNonRISpills ( )
inline

◆ setHasSpills()

void llvm::PPCFunctionInfo::setHasSpills ( )
inline

◆ setIsSplitCSR()

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

◆ setLRStoreRequired()

void llvm::PPCFunctionInfo::setLRStoreRequired ( )
inline

◆ setMinReservedArea()

void llvm::PPCFunctionInfo::setMinReservedArea ( unsigned  size)
inline

Definition at line 137 of file PPCMachineFunctionInfo.h.

Referenced by EnsureStackAlignment().

◆ setMustSaveLR()

void llvm::PPCFunctionInfo::setMustSaveLR ( bool  U)
inline

MustSaveLR - This is set when the prolog/epilog inserter does its initial scan of the function.

It is true if the LR/LR8 register is ever explicitly defined/clobbered in the machine function (e.g. by calls and movpctolr, which is used in PIC generation), or if the LR stack slot is explicitly referenced by builtin_return_address.

Definition at line 147 of file PPCMachineFunctionInfo.h.

Referenced by llvm::PPCFrameLowering::determineCalleeSaves().

◆ setPICBasePointerSaveIndex()

void llvm::PPCFunctionInfo::setPICBasePointerSaveIndex ( int  Idx)
inline

◆ setReturnAddrSaveIndex()

void llvm::PPCFunctionInfo::setReturnAddrSaveIndex ( int  idx)
inline

Definition at line 128 of file PPCMachineFunctionInfo.h.

◆ setSpillsCR()

void llvm::PPCFunctionInfo::setSpillsCR ( )
inline

◆ setSpillsVRSAVE()

void llvm::PPCFunctionInfo::setSpillsVRSAVE ( )
inline

◆ setTailCallSPDelta()

void llvm::PPCFunctionInfo::setTailCallSPDelta ( int  size)
inline

Definition at line 140 of file PPCMachineFunctionInfo.h.

Referenced by CalculateTailCallSPDiff().

◆ setUsesPICBase()

void llvm::PPCFunctionInfo::setUsesPICBase ( bool  uses)
inline

Definition at line 203 of file PPCMachineFunctionInfo.h.

◆ setUsesTOCBasePtr()

void llvm::PPCFunctionInfo::setUsesTOCBasePtr ( )
inline

Definition at line 165 of file PPCMachineFunctionInfo.h.

Referenced by setUsesTOCBasePtr().

◆ setVarArgsFrameIndex()

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

Definition at line 172 of file PPCMachineFunctionInfo.h.

Referenced by EnsureStackAlignment().

◆ setVarArgsNumFPR()

void llvm::PPCFunctionInfo::setVarArgsNumFPR ( unsigned  Num)
inline

Definition at line 181 of file PPCMachineFunctionInfo.h.

Referenced by EnsureStackAlignment().

◆ setVarArgsNumGPR()

void llvm::PPCFunctionInfo::setVarArgsNumGPR ( unsigned  Num)
inline

Definition at line 178 of file PPCMachineFunctionInfo.h.

Referenced by EnsureStackAlignment().

◆ setVarArgsStackOffset()

void llvm::PPCFunctionInfo::setVarArgsStackOffset ( int  Offset)
inline

Definition at line 175 of file PPCMachineFunctionInfo.h.

Referenced by EnsureStackAlignment().

◆ usesPICBase()

bool llvm::PPCFunctionInfo::usesPICBase ( ) const
inline

◆ usesTOCBasePtr()

bool llvm::PPCFunctionInfo::usesTOCBasePtr ( ) const
inline

Definition at line 166 of file PPCMachineFunctionInfo.h.

Referenced by llvm::PPCRegisterInfo::getReservedRegs().


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