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

Public Member Functions

 R600RegisterInfo ()
 
BitVector getReservedRegs (const MachineFunction &MF) const override
 
const MCPhysReggetCalleeSavedRegs (const MachineFunction *MF) const override
 
unsigned 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 23 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
override

Definition at line 109 of file R600RegisterInfo.cpp.

References llvm_unreachable.

◆ getCalleeSavedRegs()

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

Definition at line 66 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 83 of file R600RegisterInfo.cpp.

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

◆ getFrameRegister()

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

◆ getHWRegChan()

unsigned R600RegisterInfo::getHWRegChan ( unsigned  reg) const

◆ getHWRegIndex()

unsigned R600RegisterInfo::getHWRegIndex ( unsigned  Reg) const

Definition at line 79 of file R600RegisterInfo.cpp.

References GET_REG_INDEX.

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

◆ getRegClassWeight()

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

Definition at line 91 of file R600RegisterInfo.cpp.

References RCW.

◆ getReservedRegs()

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

◆ isPhysRegLiveAcrossClauses()

bool R600RegisterInfo::isPhysRegLiveAcrossClauses ( unsigned  Reg) const

◆ reserveRegisterTuples()

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

Definition at line 116 of file R600RegisterInfo.cpp.

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

Referenced by getReservedRegs().

Member Data Documentation

◆ RCW

RegClassWeight llvm::R600RegisterInfo::RCW

Definition at line 24 of file R600RegisterInfo.h.

Referenced by getRegClassWeight(), and R600RegisterInfo().


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