diff --git a/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h b/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h --- a/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h +++ b/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h @@ -135,9 +135,6 @@ unsigned copyCost(const RegisterBank &A, const RegisterBank &B, unsigned Size) const override; - const RegisterBank &getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const override; - InstructionMappings getInstrAlternativeMappings(const MachineInstr &MI) const override; diff --git a/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp b/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp --- a/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp +++ b/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp @@ -226,53 +226,6 @@ return RegisterBankInfo::copyCost(A, B, Size); } -const RegisterBank & -AArch64RegisterBankInfo::getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const { - switch (RC.getID()) { - case AArch64::FPR8RegClassID: - case AArch64::FPR16RegClassID: - case AArch64::FPR16_loRegClassID: - case AArch64::FPR32_with_hsub_in_FPR16_loRegClassID: - case AArch64::FPR32RegClassID: - case AArch64::FPR64RegClassID: - case AArch64::FPR64_loRegClassID: - case AArch64::FPR128RegClassID: - case AArch64::FPR128_loRegClassID: - case AArch64::DDRegClassID: - case AArch64::DDDRegClassID: - case AArch64::DDDDRegClassID: - case AArch64::QQRegClassID: - case AArch64::QQQRegClassID: - case AArch64::QQQQRegClassID: - return getRegBank(AArch64::FPRRegBankID); - case AArch64::GPR32commonRegClassID: - case AArch64::GPR32RegClassID: - case AArch64::GPR32spRegClassID: - case AArch64::GPR32sponlyRegClassID: - case AArch64::GPR32argRegClassID: - case AArch64::GPR32allRegClassID: - case AArch64::GPR64commonRegClassID: - case AArch64::GPR64RegClassID: - case AArch64::GPR64spRegClassID: - case AArch64::GPR64sponlyRegClassID: - case AArch64::GPR64argRegClassID: - case AArch64::GPR64allRegClassID: - case AArch64::GPR64noipRegClassID: - case AArch64::GPR64common_and_GPR64noipRegClassID: - case AArch64::GPR64noip_and_tcGPR64RegClassID: - case AArch64::tcGPR64RegClassID: - case AArch64::rtcGPR64RegClassID: - case AArch64::WSeqPairsClassRegClassID: - case AArch64::XSeqPairsClassRegClassID: - return getRegBank(AArch64::GPRRegBankID); - case AArch64::CCRRegClassID: - return getRegBank(AArch64::CCRegBankID); - default: - llvm_unreachable("Register class not supported"); - } -} - RegisterBankInfo::InstructionMappings AArch64RegisterBankInfo::getInstrAlternativeMappings( const MachineInstr &MI) const { diff --git a/llvm/lib/Target/ARM/ARMRegisterBankInfo.h b/llvm/lib/Target/ARM/ARMRegisterBankInfo.h --- a/llvm/lib/Target/ARM/ARMRegisterBankInfo.h +++ b/llvm/lib/Target/ARM/ARMRegisterBankInfo.h @@ -32,9 +32,6 @@ public: ARMRegisterBankInfo(const TargetRegisterInfo &TRI); - const RegisterBank &getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const override; - const InstructionMapping & getInstrMapping(const MachineInstr &MI) const override; }; diff --git a/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp b/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp --- a/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp +++ b/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp @@ -174,44 +174,6 @@ llvm::call_once(InitializeRegisterBankFlag, InitializeRegisterBankOnce); } -const RegisterBank & -ARMRegisterBankInfo::getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const { - using namespace ARM; - - switch (RC.getID()) { - case GPRRegClassID: - case GPRwithAPSRRegClassID: - case GPRnoipRegClassID: - case GPRnopcRegClassID: - case GPRnoip_and_GPRnopcRegClassID: - case rGPRRegClassID: - case GPRspRegClassID: - case GPRnoip_and_tcGPRRegClassID: - case tcGPRRegClassID: - case tGPRRegClassID: - case tGPREvenRegClassID: - case tGPROddRegClassID: - case tGPR_and_tGPREvenRegClassID: - case tGPR_and_tGPROddRegClassID: - case tGPREven_and_tcGPRRegClassID: - case tGPREven_and_GPRnoip_and_tcGPRRegClassID: - case tGPROdd_and_tcGPRRegClassID: - return getRegBank(ARM::GPRRegBankID); - case HPRRegClassID: - case SPR_8RegClassID: - case SPRRegClassID: - case DPR_8RegClassID: - case DPRRegClassID: - case QPRRegClassID: - return getRegBank(ARM::FPRRegBankID); - default: - llvm_unreachable("Unsupported register kind"); - } - - llvm_unreachable("Switch should handle all register classes"); -} - const RegisterBankInfo::InstructionMapping & ARMRegisterBankInfo::getInstrMapping(const MachineInstr &MI) const { auto Opc = MI.getOpcode(); diff --git a/llvm/lib/Target/Mips/MipsRegisterBankInfo.h b/llvm/lib/Target/Mips/MipsRegisterBankInfo.h --- a/llvm/lib/Target/Mips/MipsRegisterBankInfo.h +++ b/llvm/lib/Target/Mips/MipsRegisterBankInfo.h @@ -32,9 +32,6 @@ public: MipsRegisterBankInfo(const TargetRegisterInfo &TRI); - const RegisterBank &getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const override; - const InstructionMapping & getInstrMapping(const MachineInstr &MI) const override; diff --git a/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp b/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp --- a/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp +++ b/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp @@ -76,35 +76,6 @@ MipsRegisterBankInfo::MipsRegisterBankInfo(const TargetRegisterInfo &TRI) : MipsGenRegisterBankInfo() {} -const RegisterBank & -MipsRegisterBankInfo::getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const { - using namespace Mips; - - switch (RC.getID()) { - case Mips::GPR32RegClassID: - case Mips::CPU16Regs_and_GPRMM16ZeroRegClassID: - case Mips::GPRMM16MovePPairFirstRegClassID: - case Mips::CPU16Regs_and_GPRMM16MovePPairSecondRegClassID: - case Mips::GPRMM16MoveP_and_CPU16Regs_and_GPRMM16ZeroRegClassID: - case Mips::GPRMM16MovePPairFirst_and_GPRMM16MovePPairSecondRegClassID: - case Mips::SP32RegClassID: - case Mips::GP32RegClassID: - return getRegBank(Mips::GPRBRegBankID); - case Mips::FGRCCRegClassID: - case Mips::FGR32RegClassID: - case Mips::FGR64RegClassID: - case Mips::AFGR64RegClassID: - case Mips::MSA128BRegClassID: - case Mips::MSA128HRegClassID: - case Mips::MSA128WRegClassID: - case Mips::MSA128DRegClassID: - return getRegBank(Mips::FPRBRegBankID); - default: - llvm_unreachable("Register class not supported"); - } -} - // Instructions where all register operands are floating point. static bool isFloatingPointOpcode(unsigned Opc) { switch (Opc) { diff --git a/llvm/lib/Target/X86/X86RegisterBankInfo.h b/llvm/lib/Target/X86/X86RegisterBankInfo.h --- a/llvm/lib/Target/X86/X86RegisterBankInfo.h +++ b/llvm/lib/Target/X86/X86RegisterBankInfo.h @@ -64,9 +64,6 @@ public: X86RegisterBankInfo(const TargetRegisterInfo &TRI); - const RegisterBank &getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const override; - InstructionMappings getInstrAlternativeMappings(const MachineInstr &MI) const override; diff --git a/llvm/lib/Target/X86/X86RegisterBankInfo.cpp b/llvm/lib/Target/X86/X86RegisterBankInfo.cpp --- a/llvm/lib/Target/X86/X86RegisterBankInfo.cpp +++ b/llvm/lib/Target/X86/X86RegisterBankInfo.cpp @@ -40,28 +40,6 @@ assert(RBGPR.getSize() == 64 && "GPRs should hold up to 64-bit"); } -const RegisterBank & -X86RegisterBankInfo::getRegBankFromRegClass(const TargetRegisterClass &RC, - LLT) const { - - if (X86::GR8RegClass.hasSubClassEq(&RC) || - X86::GR16RegClass.hasSubClassEq(&RC) || - X86::GR32RegClass.hasSubClassEq(&RC) || - X86::GR64RegClass.hasSubClassEq(&RC) || - X86::LOW32_ADDR_ACCESSRegClass.hasSubClassEq(&RC) || - X86::LOW32_ADDR_ACCESS_RBPRegClass.hasSubClassEq(&RC)) - return getRegBank(X86::GPRRegBankID); - - if (X86::FR32XRegClass.hasSubClassEq(&RC) || - X86::FR64XRegClass.hasSubClassEq(&RC) || - X86::VR128XRegClass.hasSubClassEq(&RC) || - X86::VR256XRegClass.hasSubClassEq(&RC) || - X86::VR512RegClass.hasSubClassEq(&RC)) - return getRegBank(X86::VECRRegBankID); - - llvm_unreachable("Unsupported register kind yet."); -} - X86GenRegisterBankInfo::PartialMappingIdx X86GenRegisterBankInfo::getPartialMappingIdx(const LLT &Ty, bool isFP) { if ((Ty.isScalar() && !isFP) || Ty.isPointer()) {