LLVM 20.0.0git
Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::MipsRegisterInfo Class Referenceabstract

#include "Target/Mips/MipsRegisterInfo.h"

Inheritance diagram for llvm::MipsRegisterInfo:
Inheritance graph
[legend]

Public Types

enum class  MipsPtrClass { Default = 0 , GPR16MM = 1 , StackPointer = 2 , GlobalPointer = 3 }
 

Public Member Functions

 MipsRegisterInfo ()
 
const TargetRegisterClassgetPointerRegClass (const MachineFunction &MF, unsigned Kind) const override
 Code Generation virtual methods...
 
unsigned getRegPressureLimit (const TargetRegisterClass *RC, MachineFunction &MF) const override
 
const MCPhysReggetCalleeSavedRegs (const MachineFunction *MF) const override
 Mips Callee Saved Registers.
 
const uint32_tgetCallPreservedMask (const MachineFunction &MF, CallingConv::ID) const override
 
BitVector getReservedRegs (const MachineFunction &MF) const override
 
bool eliminateFrameIndex (MachineBasicBlock::iterator II, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override
 Stack Frame Processing Methods.
 
bool canRealignStack (const MachineFunction &MF) const override
 
Register getFrameRegister (const MachineFunction &MF) const override
 Debug information queries.
 
virtual const TargetRegisterClassintRegClass (unsigned Size) const =0
 Return GPR register class.
 

Static Public Member Functions

static unsigned getPICCallReg ()
 Get PIC indirect call register.
 
static const uint32_tgetMips16RetHelperMask ()
 

Detailed Description

Definition at line 27 of file MipsRegisterInfo.h.

Member Enumeration Documentation

◆ MipsPtrClass

Enumerator
Default 

The default register class for integer values.

GPR16MM 

The subset of registers permitted in certain microMIPS instructions such as lw16.

StackPointer 

The stack pointer only.

GlobalPointer 

The global pointer only.

Definition at line 29 of file MipsRegisterInfo.h.

Constructor & Destructor Documentation

◆ MipsRegisterInfo()

MipsRegisterInfo::MipsRegisterInfo ( )

Definition at line 40 of file MipsRegisterInfo.cpp.

Member Function Documentation

◆ canRealignStack()

bool MipsRegisterInfo::canRealignStack ( const MachineFunction MF) const
override

◆ eliminateFrameIndex()

bool MipsRegisterInfo::eliminateFrameIndex ( MachineBasicBlock::iterator  II,
int  SPAdj,
unsigned  FIOperandNum,
RegScavenger RS = nullptr 
) const
override

◆ getCalleeSavedRegs()

const MCPhysReg * MipsRegisterInfo::getCalleeSavedRegs ( const MachineFunction MF) const
override

◆ getCallPreservedMask()

const uint32_t * MipsRegisterInfo::getCallPreservedMask ( const MachineFunction MF,
CallingConv::ID   
) const
override

◆ getFrameRegister()

Register MipsRegisterInfo::getFrameRegister ( const MachineFunction MF) const
override

◆ getMips16RetHelperMask()

const uint32_t * MipsRegisterInfo::getMips16RetHelperMask ( )
static

Definition at line 143 of file MipsRegisterInfo.cpp.

Referenced by llvm::MipsTargetLowering::getOpndList().

◆ getPICCallReg()

unsigned MipsRegisterInfo::getPICCallReg ( )
static

Get PIC indirect call register.

Definition at line 42 of file MipsRegisterInfo.cpp.

◆ getPointerRegClass()

const TargetRegisterClass * MipsRegisterInfo::getPointerRegClass ( const MachineFunction MF,
unsigned  Kind 
) const
override

Code Generation virtual methods...

Definition at line 45 of file MipsRegisterInfo.cpp.

References Default, llvm::MachineFunction::getSubtarget(), GlobalPointer, GPR16MM, llvm_unreachable, and StackPointer.

◆ getRegPressureLimit()

unsigned MipsRegisterInfo::getRegPressureLimit ( const TargetRegisterClass RC,
MachineFunction MF 
) const
override

◆ getReservedRegs()

BitVector MipsRegisterInfo::getReservedRegs ( const MachineFunction MF) const
override

◆ intRegClass()

virtual const TargetRegisterClass * llvm::MipsRegisterInfo::intRegClass ( unsigned  Size) const
pure virtual

Return GPR register class.

Implemented in llvm::Mips16RegisterInfo, and llvm::MipsSERegisterInfo.


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