diff --git a/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp b/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp index ef8e4f6d68518d97a7a6c7a4d1e18870614900c9..8f97669a38988cbd6e9080ed483d679c60a3fdf4 100644 --- a/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp +++ b/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp @@ -173,11 +173,9 @@ RegisterBankInfo::getRegBank(unsigned Reg, const MachineRegisterInfo &MRI, assert(Reg && "NoRegister does not have a register bank"); const RegClassOrRegBank &RegClassOrBank = MRI.getRegClassOrRegBank(Reg); - if (RegClassOrBank.is()) - return RegClassOrBank.get(); - const TargetRegisterClass *RC = - RegClassOrBank.get(); - if (RC) + if (auto *RB = RegClassOrBank.dyn_cast()) + return RB; + if (auto *RC = RegClassOrBank.dyn_cast()) return &getRegBankFromRegClass(*RC); return nullptr; }