LLVM API Documentation

Public Member Functions | Public Attributes | Static Public Attributes
llvm::AMDGPURegisterInfo Struct Reference

#include <AMDGPURegisterInfo.h>

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

List of all members.

Public Member Functions

 AMDGPURegisterInfo (const AMDGPUSubtarget &st)
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

Public Attributes

const AMDGPUSubtargetST

Static Public Attributes

static const MCPhysReg CalleeSavedReg = AMDGPU::NoRegister

Detailed Description

Definition at line 31 of file AMDGPURegisterInfo.h.


Constructor & Destructor Documentation

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]

Reimplemented in llvm::SIRegisterInfo.

Definition at line 37 of file AMDGPURegisterInfo.cpp.

References llvm_unreachable.

Definition at line 33 of file AMDGPURegisterInfo.cpp.

References CalleeSavedReg.

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

Definition at line 41 of file AMDGPURegisterInfo.h.

Definition at line 44 of file AMDGPURegisterInfo.cpp.

virtual unsigned llvm::AMDGPURegisterInfo::getHWRegIndex ( unsigned  Reg) const [inline, virtual]

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

Definition at line 45 of file AMDGPURegisterInfo.h.

Definition at line 61 of file AMDGPURegisterInfo.cpp.

References getSubRegFromChannel().

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

Definition at line 37 of file AMDGPURegisterInfo.h.

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

Definition at line 49 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: