LLVM  10.0.0svn
Public Member Functions | Public Attributes | List of all members
llvm::R600RegisterInfo Struct Referencefinal

#include "Target/AMDGPU/R600RegisterInfo.h"

Inheritance diagram for llvm::R600RegisterInfo:
Inheritance graph
Collaboration diagram for llvm::R600RegisterInfo:
Collaboration graph

Public Member Functions

 R600RegisterInfo ()
BitVector getReservedRegs (const MachineFunction &MF) const override
const MCPhysReggetCalleeSavedRegs (const MachineFunction *MF) const override
Register getFrameRegister (const MachineFunction &MF) const override
unsigned getHWRegChan (unsigned reg) const
 get the HW encoding for a register's channel. More...
unsigned getHWRegIndex (unsigned Reg) const
const TargetRegisterClassgetCFGStructurizerRegClass (MVT VT) const
 get the register class of the specified type to use in the CFGStructurizer More...
const RegClassWeightgetRegClassWeight (const TargetRegisterClass *RC) const override
bool isPhysRegLiveAcrossClauses (unsigned Reg) const
void eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override
void reserveRegisterTuples (BitVector &Reserved, unsigned Reg) const

Public Attributes

RegClassWeight RCW

Detailed Description

Definition at line 22 of file R600RegisterInfo.h.

Constructor & Destructor Documentation

◆ R600RegisterInfo()

R600RegisterInfo::R600RegisterInfo ( )

Member Function Documentation

◆ eliminateFrameIndex()

void R600RegisterInfo::eliminateFrameIndex ( MachineBasicBlock::iterator  MI,
int  SPAdj,
unsigned  FIOperandNum,
RegScavenger RS = nullptr 
) const

Definition at line 108 of file R600RegisterInfo.cpp.

References llvm_unreachable.

◆ getCalleeSavedRegs()

const MCPhysReg * R600RegisterInfo::getCalleeSavedRegs ( const MachineFunction MF) const

Definition at line 65 of file R600RegisterInfo.cpp.

References CalleeSavedReg.

◆ getCFGStructurizerRegClass()

const TargetRegisterClass * R600RegisterInfo::getCFGStructurizerRegClass ( MVT  VT) const

get the register class of the specified type to use in the CFGStructurizer

Definition at line 82 of file R600RegisterInfo.cpp.

References llvm::MVT::i32, and llvm::MVT::SimpleTy.

◆ getFrameRegister()

Register R600RegisterInfo::getFrameRegister ( const MachineFunction MF) const

◆ getHWRegChan()

unsigned R600RegisterInfo::getHWRegChan ( unsigned  reg) const

◆ getHWRegIndex()

unsigned R600RegisterInfo::getHWRegIndex ( unsigned  Reg) const

Definition at line 78 of file R600RegisterInfo.cpp.

References GET_REG_INDEX.

Referenced by llvm::R600InstrInfo::expandPostRAPseudo().

◆ getRegClassWeight()

const RegClassWeight & R600RegisterInfo::getRegClassWeight ( const TargetRegisterClass RC) const

Definition at line 90 of file R600RegisterInfo.cpp.

References RCW.

◆ getReservedRegs()

BitVector R600RegisterInfo::getReservedRegs ( const MachineFunction MF) const

◆ isPhysRegLiveAcrossClauses()

bool R600RegisterInfo::isPhysRegLiveAcrossClauses ( unsigned  Reg) const

◆ reserveRegisterTuples()

void R600RegisterInfo::reserveRegisterTuples ( BitVector Reserved,
unsigned  Reg 
) const

Definition at line 115 of file R600RegisterInfo.cpp.

References llvm::MCRegAliasIterator::isValid(), and llvm::BitVector::set().

Referenced by getReservedRegs().

Member Data Documentation


RegClassWeight llvm::R600RegisterInfo::RCW

Definition at line 23 of file R600RegisterInfo.h.

Referenced by getRegClassWeight(), and R600RegisterInfo().

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