LLVM API Documentation
#include <SIRegisterInfo.h>


Public Attributes | |
| AMDGPUTargetMachine & | TM |
Public Attributes inherited from llvm::AMDGPURegisterInfo | |
| TargetMachine & | TM |
Additional Inherited Members | |
Static Public Attributes inherited from llvm::AMDGPURegisterInfo | |
| static const uint16_t | CalleeSavedReg = AMDGPU::NoRegister |
Definition at line 25 of file SIRegisterInfo.h.
| SIRegisterInfo::SIRegisterInfo | ( | AMDGPUTargetMachine & | tm | ) |
Definition at line 22 of file SIRegisterInfo.cpp.
|
virtual |
get the register class of the specified type to use in the CFGStructurizer
Reimplemented from llvm::AMDGPURegisterInfo.
Definition at line 50 of file SIRegisterInfo.cpp.
References llvm::MVT::i32, and llvm::MVT::SimpleTy.
| const TargetRegisterClass * SIRegisterInfo::getEquivalentVGPRClass | ( | const TargetRegisterClass * | SRC | ) | const |
SRC Definition at line 99 of file SIRegisterInfo.cpp.
References hasVGPRs().
Referenced by llvm::SIInstrInfo::legalizeOperands(), llvm::SIInstrInfo::legalizeOpWithMove(), and llvm::SIInstrInfo::moveToVALU().
Reimplemented from llvm::AMDGPURegisterInfo.
Definition at line 58 of file SIRegisterInfo.cpp.
|
virtual |
| RC | is an AMDIL reg class. |
RC. Reimplemented from llvm::AMDGPURegisterInfo.
Definition at line 42 of file SIRegisterInfo.cpp.
References llvm::TargetRegisterClass::getID().
| const TargetRegisterClass * SIRegisterInfo::getPhysRegClass | ( | unsigned | Reg | ) | const |
Return the 'base' register class for this register. e.g. SGPR0 => SReg_32, VGPR => VReg_32 SGPR0_SGPR1 -> SReg_32, etc.
Definition at line 62 of file SIRegisterInfo.cpp.
References llvm::TargetRegisterInfo::isVirtualRegister().
|
virtual |
Definition at line 36 of file SIRegisterInfo.cpp.
References llvm::TargetRegisterClass::getNumRegs().
|
virtual |
Reimplemented from llvm::AMDGPURegisterInfo.
Definition at line 27 of file SIRegisterInfo.cpp.
References llvm::AMDGPUTargetMachine::getInstrInfo(), llvm::SIInstrInfo::reserveIndirectRegisters(), llvm::BitVector::set(), TII, and TM.
| const TargetRegisterClass * SIRegisterInfo::getSubRegClass | ( | const TargetRegisterClass * | RC, |
| unsigned | SubIdx | ||
| ) | const |
RC for the given SubIdx. If SubIdx equals NoSubRegister, RC will be returned. Definition at line 119 of file SIRegisterInfo.cpp.
References isSGPRClass().
| bool SIRegisterInfo::hasVGPRs | ( | const TargetRegisterClass * | RC | ) | const |
Definition at line 90 of file SIRegisterInfo.cpp.
Referenced by llvm::SIInstrInfo::canReadVGPR(), getEquivalentVGPRClass(), hasVGPROperands(), isSGPRClass(), llvm::SIInstrInfo::legalizeOperands(), and llvm::SIInstrInfo::moveToVALU().
| bool SIRegisterInfo::isSGPRClass | ( | const TargetRegisterClass * | RC | ) | const |
Definition at line 83 of file SIRegisterInfo.cpp.
References hasVGPRs().
Referenced by llvm::SIInstrInfo::commuteInstruction(), getSubRegClass(), llvm::SIInstrInfo::legalizeOperands(), and llvm::SIInstrInfo::legalizeOpWithMove().
| AMDGPUTargetMachine& llvm::SIRegisterInfo::TM |
Definition at line 26 of file SIRegisterInfo.h.
Referenced by getReservedRegs().