Skip to content

Commit 76c4167

Browse files
committed
AMDGPU: Remove wrapper around TRI::getRegClass
This shadows the member in the base class, but differs slightly in behavior. The base method doesn't check for the invalid case.
1 parent a6de0f1 commit 76c4167

File tree

4 files changed

+7
-18
lines changed

4 files changed

+7
-18
lines changed

llvm/lib/Target/AMDGPU/SIFoldOperands.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1309,10 +1309,11 @@ void SIFoldOperandsImpl::foldOperand(
13091309
continue;
13101310

13111311
const int SrcIdx = MovOp == AMDGPU::V_MOV_B16_t16_e64 ? 2 : 1;
1312-
const TargetRegisterClass *MovSrcRC =
1313-
TRI->getRegClass(TII->getOpRegClassID(MovDesc.operands()[SrcIdx]));
13141312

1315-
if (MovSrcRC) {
1313+
int16_t RegClassID = TII->getOpRegClassID(MovDesc.operands()[SrcIdx]);
1314+
if (RegClassID != -1) {
1315+
const TargetRegisterClass *MovSrcRC = TRI->getRegClass(RegClassID);
1316+
13161317
if (UseSubReg)
13171318
MovSrcRC = TRI->getMatchingSuperRegClass(SrcRC, MovSrcRC, UseSubReg);
13181319

llvm/lib/Target/AMDGPU/SIInstrInfo.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6041,7 +6041,7 @@ SIInstrInfo::getRegClass(const MCInstrDesc &TID, unsigned OpNum,
60416041
return nullptr;
60426042
const MCOperandInfo &OpInfo = TID.operands()[OpNum];
60436043
int16_t RegClass = getOpRegClassID(OpInfo);
6044-
return RI.getRegClass(RegClass);
6044+
return RegClass < 0 ? nullptr : RI.getRegClass(RegClass);
60456045
}
60466046

60476047
const TargetRegisterClass *SIInstrInfo::getOpRegClass(const MachineInstr &MI,
@@ -6059,7 +6059,8 @@ const TargetRegisterClass *SIInstrInfo::getOpRegClass(const MachineInstr &MI,
60596059
return RI.getPhysRegBaseClass(Reg);
60606060
}
60616061

6062-
return RI.getRegClass(getOpRegClassID(Desc.operands()[OpNo]));
6062+
int16_t RegClass = getOpRegClassID(Desc.operands()[OpNo]);
6063+
return RegClass < 0 ? nullptr : RI.getRegClass(RegClass);
60636064
}
60646065

60656066
void SIInstrInfo::legalizeOpWithMove(MachineInstr &MI, unsigned OpIdx) const {

llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3888,17 +3888,6 @@ const TargetRegisterClass *SIRegisterInfo::getVGPR64Class() const {
38883888
: &AMDGPU::VReg_64RegClass;
38893889
}
38903890

3891-
// FIXME: This should be deleted
3892-
const TargetRegisterClass *
3893-
SIRegisterInfo::getRegClass(unsigned RCID) const {
3894-
switch ((int)RCID) {
3895-
case -1:
3896-
return nullptr;
3897-
default:
3898-
return AMDGPUGenRegisterInfo::getRegClass(RCID);
3899-
}
3900-
}
3901-
39023891
// Find reaching register definition
39033892
MachineInstr *SIRegisterInfo::findReachingDef(Register Reg, unsigned SubReg,
39043893
MachineInstr &Use,

llvm/lib/Target/AMDGPU/SIRegisterInfo.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -391,8 +391,6 @@ class SIRegisterInfo final : public AMDGPUGenRegisterInfo {
391391

392392
MCRegister getExec() const;
393393

394-
const TargetRegisterClass *getRegClass(unsigned RCID) const;
395-
396394
// Find reaching register definition
397395
MachineInstr *findReachingDef(Register Reg, unsigned SubReg,
398396
MachineInstr &Use,

0 commit comments

Comments
 (0)