LLVM  8.0.1
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]
Collaboration diagram for llvm::MipsRegisterInfo:
Collaboration graph
[legend]

Public Types

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

Public Member Functions

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

Static Public Member Functions

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

Detailed Description

Definition at line 28 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 30 of file MipsRegisterInfo.h.

Constructor & Destructor Documentation

◆ MipsRegisterInfo()

MipsRegisterInfo::MipsRegisterInfo ( )

Definition at line 43 of file MipsRegisterInfo.cpp.

Member Function Documentation

◆ canRealignStack()

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

◆ eliminateFrameIndex()

void 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()

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

◆ getMips16RetHelperMask()

const uint32_t * MipsRegisterInfo::getMips16RetHelperMask ( )
static

Definition at line 146 of file MipsRegisterInfo.cpp.

References getReservedRegs().

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

◆ getPICCallReg()

unsigned MipsRegisterInfo::getPICCallReg ( )
static

Get PIC indirect call register.

Definition at line 45 of file MipsRegisterInfo.cpp.

◆ getPointerRegClass()

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

◆ 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.

◆ requiresRegisterScavenging()

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

Definition at line 260 of file MipsRegisterInfo.cpp.

◆ trackLivenessAfterRegAlloc()

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

Definition at line 265 of file MipsRegisterInfo.cpp.

References eliminateFrameIndex().


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