Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
llvm::MipsFunctionInfo Class Reference

MipsFunctionInfo - This class is derived from MachineFunction private Mips target-specific information for each MachineFunction. More...

#include "Target/Mips/MipsMachineFunction.h"

Inheritance diagram for llvm::MipsFunctionInfo:
[legend]

Public Member Functions

 MipsFunctionInfo (const Function &F, const TargetSubtargetInfo *STI)
MachineFunctionInfoclone (BumpPtrAllocator &Allocator, MachineFunction &DestMF, const DenseMap< MachineBasicBlock *, MachineBasicBlock * > &Src2DstMBB) const override
 Make a functionally equivalent copy of this MachineFunctionInfo in MF.
 ~MipsFunctionInfo () override
unsigned getSRetReturnReg () const
void setSRetReturnReg (unsigned Reg)
bool globalBaseRegSet () const
Register getGlobalBaseReg (MachineFunction &MF)
Register getGlobalBaseRegForGlobalISel (MachineFunction &MF)
void initGlobalBaseReg (MachineFunction &MF)
int getVarArgsFrameIndex () const
void setVarArgsFrameIndex (int Index)
bool hasByvalArg () const
void setFormalArgInfo (unsigned Size, bool HasByval)
unsigned getIncomingArgSize () const
bool callsEhReturn () const
void setCallsEhReturn ()
void createEhDataRegsFI (MachineFunction &MF)
int getEhDataRegFI (unsigned Reg) const
bool isEhDataRegFI (int FI) const
MachinePointerInfo callPtrInfo (MachineFunction &MF, const char *ES)
 Create a MachinePointerInfo that has an ExternalSymbolPseudoSourceValue object representing a GOT entry for an external function.
bool isISR () const
void setISR ()
void createISRRegFI (MachineFunction &MF)
int getISRRegFI (Register Reg) const
bool isISRRegFI (int FI) const
MachinePointerInfo callPtrInfo (MachineFunction &MF, const GlobalValue *GV)
 Create a MachinePointerInfo that has a GlobalValuePseudoSourceValue object representing a GOT entry for a global function.
void setSaveS2 ()
bool hasSaveS2 () const
int getMoveF64ViaSpillFI (MachineFunction &MF, const TargetRegisterClass *RC)
Public Member Functions inherited from llvm::MachineFunctionInfo
virtual ~MachineFunctionInfo ()

Public Attributes

std::map< const char *, const Mips16HardFloatInfo::FuncSignature * > StubsNeeded

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<typename Ty>
static Ty * create (BumpPtrAllocator &Allocator, const Ty &MFI)

Detailed Description

MipsFunctionInfo - This class is derived from MachineFunction private Mips target-specific information for each MachineFunction.

Definition at line 25 of file MipsMachineFunction.h.

Constructor & Destructor Documentation

◆ MipsFunctionInfo()

llvm::MipsFunctionInfo::MipsFunctionInfo ( const Function & F,
const TargetSubtargetInfo * STI )
inline

Definition at line 27 of file MipsMachineFunction.h.

References F.

Referenced by clone().

◆ ~MipsFunctionInfo()

MipsFunctionInfo::~MipsFunctionInfo ( )
overridedefault

Member Function Documentation

◆ callPtrInfo() [1/2]

MachinePointerInfo MipsFunctionInfo::callPtrInfo ( MachineFunction & MF,
const char * ES )

Create a MachinePointerInfo that has an ExternalSymbolPseudoSourceValue object representing a GOT entry for an external function.

Definition at line 191 of file MipsMachineFunction.cpp.

References llvm::PseudoSourceValueManager::getExternalSymbolCallEntry(), and llvm::MachineFunction::getPSVManager().

◆ callPtrInfo() [2/2]

MachinePointerInfo MipsFunctionInfo::callPtrInfo ( MachineFunction & MF,
const GlobalValue * GV )

Create a MachinePointerInfo that has a GlobalValuePseudoSourceValue object representing a GOT entry for a global function.

Definition at line 196 of file MipsMachineFunction.cpp.

References llvm::PseudoSourceValueManager::getGlobalValueCallEntry(), and llvm::MachineFunction::getPSVManager().

◆ callsEhReturn()

bool llvm::MipsFunctionInfo::callsEhReturn ( ) const
inline

◆ clone()

MachineFunctionInfo * MipsFunctionInfo::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 27 of file MipsMachineFunction.cpp.

References llvm::MachineFunction::cloneInfo(), and MipsFunctionInfo().

◆ createEhDataRegsFI()

◆ createISRRegFI()

◆ getEhDataRegFI()

int llvm::MipsFunctionInfo::getEhDataRegFI ( unsigned Reg) const
inline

◆ getGlobalBaseReg()

◆ getGlobalBaseRegForGlobalISel()

Register MipsFunctionInfo::getGlobalBaseRegForGlobalISel ( MachineFunction & MF)

Definition at line 62 of file MipsMachineFunction.cpp.

References getGlobalBaseReg(), and initGlobalBaseReg().

Referenced by llvm::MipsCallLowering::lowerCall().

◆ getIncomingArgSize()

unsigned llvm::MipsFunctionInfo::getIncomingArgSize ( ) const
inline

Definition at line 56 of file MipsMachineFunction.h.

◆ getISRRegFI()

int llvm::MipsFunctionInfo::getISRRegFI ( Register Reg) const
inline

Definition at line 74 of file MipsMachineFunction.h.

References Reg.

◆ getMoveF64ViaSpillFI()

◆ getSRetReturnReg()

unsigned llvm::MipsFunctionInfo::getSRetReturnReg ( ) const
inline

Definition at line 36 of file MipsMachineFunction.h.

◆ getVarArgsFrameIndex()

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

Definition at line 47 of file MipsMachineFunction.h.

◆ globalBaseRegSet()

bool MipsFunctionInfo::globalBaseRegSet ( ) const

Definition at line 35 of file MipsMachineFunction.cpp.

◆ hasByvalArg()

bool llvm::MipsFunctionInfo::hasByvalArg ( ) const
inline

Definition at line 50 of file MipsMachineFunction.h.

◆ hasSaveS2()

bool llvm::MipsFunctionInfo::hasSaveS2 ( ) const
inline

Definition at line 82 of file MipsMachineFunction.h.

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

◆ initGlobalBaseReg()

◆ isEhDataRegFI()

bool MipsFunctionInfo::isEhDataRegFI ( int FI) const

Definition at line 183 of file MipsMachineFunction.cpp.

◆ isISR()

bool llvm::MipsFunctionInfo::isISR ( ) const
inline

◆ isISRRegFI()

bool MipsFunctionInfo::isISRRegFI ( int FI) const

Definition at line 188 of file MipsMachineFunction.cpp.

◆ setCallsEhReturn()

void llvm::MipsFunctionInfo::setCallsEhReturn ( )
inline

Definition at line 59 of file MipsMachineFunction.h.

◆ setFormalArgInfo()

void llvm::MipsFunctionInfo::setFormalArgInfo ( unsigned Size,
bool HasByval )
inline

Definition at line 51 of file MipsMachineFunction.h.

References Size.

◆ setISR()

void llvm::MipsFunctionInfo::setISR ( )
inline

Definition at line 72 of file MipsMachineFunction.h.

◆ setSaveS2()

void llvm::MipsFunctionInfo::setSaveS2 ( )
inline

Definition at line 81 of file MipsMachineFunction.h.

◆ setSRetReturnReg()

void llvm::MipsFunctionInfo::setSRetReturnReg ( unsigned Reg)
inline

Definition at line 37 of file MipsMachineFunction.h.

References Reg.

◆ setVarArgsFrameIndex()

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

Definition at line 48 of file MipsMachineFunction.h.

Member Data Documentation

◆ StubsNeeded

std::map<const char *, const Mips16HardFloatInfo::FuncSignature *> llvm::MipsFunctionInfo::StubsNeeded

Definition at line 87 of file MipsMachineFunction.h.


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