Skip to content

Commit c16ce8f

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 fc0f34c commit c16ce8f

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
@@ -6031,7 +6031,7 @@ SIInstrInfo::getRegClass(const MCInstrDesc &TID, unsigned OpNum,
60316031
return nullptr;
60326032
const MCOperandInfo &OpInfo = TID.operands()[OpNum];
60336033
int16_t RegClass = getOpRegClassID(OpInfo);
6034-
return RI.getRegClass(RegClass);
6034+
return RegClass < 0 ? nullptr : RI.getRegClass(RegClass);
60356035
}
60366036

60376037
const TargetRegisterClass *SIInstrInfo::getOpRegClass(const MachineInstr &MI,
@@ -6049,7 +6049,8 @@ const TargetRegisterClass *SIInstrInfo::getOpRegClass(const MachineInstr &MI,
60496049
return RI.getPhysRegBaseClass(Reg);
60506050
}
60516051

6052-
return RI.getRegClass(getOpRegClassID(Desc.operands()[OpNo]));
6052+
int16_t RegClass = getOpRegClassID(Desc.operands()[OpNo]);
6053+
return RegClass < 0 ? nullptr : RI.getRegClass(RegClass);
60536054
}
60546055

60556056
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)