LLVM  3.7.0
Public Member Functions | Static Public Attributes | List of all members
llvm::AMDGPURegisterInfo Struct Reference

#include <AMDGPURegisterInfo.h>

Inheritance diagram for llvm::AMDGPURegisterInfo:
[legend]
Collaboration diagram for llvm::AMDGPURegisterInfo:
[legend]

Public Member Functions

 AMDGPURegisterInfo ()
 
BitVector getReservedRegs (const MachineFunction &MF) const override
 
virtual const TargetRegisterClassgetCFGStructurizerRegClass (MVT VT) const
 
virtual unsigned getHWRegIndex (unsigned Reg) const
 
unsigned getSubRegFromChannel (unsigned Channel) const
 
const MCPhysReggetCalleeSavedRegs (const MachineFunction *MF) const override
 
void eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS) const override
 
unsigned getFrameRegister (const MachineFunction &MF) const override
 
unsigned getIndirectSubReg (unsigned IndirectIndex) const
 

Static Public Attributes

static const MCPhysReg CalleeSavedReg = AMDGPU::NoRegister
 

Detailed Description

Definition at line 31 of file AMDGPURegisterInfo.h.

Constructor & Destructor Documentation

AMDGPURegisterInfo::AMDGPURegisterInfo ( )

Definition at line 20 of file AMDGPURegisterInfo.cpp.

Member Function Documentation

void AMDGPURegisterInfo::eliminateFrameIndex ( MachineBasicBlock::iterator  MI,
int  SPAdj,
unsigned  FIOperandNum,
RegScavenger RS 
) const
override

Definition at line 34 of file AMDGPURegisterInfo.cpp.

References llvm_unreachable.

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

Definition at line 30 of file AMDGPURegisterInfo.cpp.

References CalleeSavedReg.

virtual const TargetRegisterClass* llvm::AMDGPURegisterInfo::getCFGStructurizerRegClass ( MVT  VT) const
inlinevirtual

Reimplemented in llvm::SIRegisterInfo, and llvm::R600RegisterInfo.

Definition at line 40 of file AMDGPURegisterInfo.h.

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

Definition at line 41 of file AMDGPURegisterInfo.cpp.

virtual unsigned llvm::AMDGPURegisterInfo::getHWRegIndex ( unsigned  Reg) const
inlinevirtual

Reimplemented in llvm::SIRegisterInfo, and llvm::R600RegisterInfo.

Definition at line 44 of file AMDGPURegisterInfo.h.

unsigned AMDGPURegisterInfo::getIndirectSubReg ( unsigned  IndirectIndex) const

Definition at line 57 of file AMDGPURegisterInfo.cpp.

References getSubRegFromChannel().

BitVector llvm::AMDGPURegisterInfo::getReservedRegs ( const MachineFunction MF) const
inlineoverride

Definition at line 36 of file AMDGPURegisterInfo.h.

unsigned AMDGPURegisterInfo::getSubRegFromChannel ( unsigned  Channel) const
Returns
the sub reg enum value for the given Channel (e.g. getSubRegFromChannel(0) -> AMDGPU::sub0)

Definition at line 45 of file AMDGPURegisterInfo.cpp.

References llvm::array_lengthof().

Referenced by llvm::R600InstrInfo::copyPhysReg(), getIndirectSubReg(), and llvm::R600TargetLowering::LowerOperation().

Member Data Documentation

const MCPhysReg AMDGPURegisterInfo::CalleeSavedReg = AMDGPU::NoRegister
static

Definition at line 32 of file AMDGPURegisterInfo.h.

Referenced by getCalleeSavedRegs().


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