diff --git a/llvm/lib/Target/RISCV/RISCVISelLowering.cpp b/llvm/lib/Target/RISCV/RISCVISelLowering.cpp index 29c8e92e888b3..0aff839ff7516 100644 --- a/llvm/lib/Target/RISCV/RISCVISelLowering.cpp +++ b/llvm/lib/Target/RISCV/RISCVISelLowering.cpp @@ -23449,7 +23449,6 @@ RISCVTargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv, const SmallVectorImpl &OutVals, const SDLoc &DL, SelectionDAG &DAG) const { MachineFunction &MF = DAG.getMachineFunction(); - const RISCVSubtarget &STI = MF.getSubtarget(); // Stores the assignment of the return value to a location. SmallVector RVLocs; @@ -23484,8 +23483,8 @@ RISCVTargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv, Register RegLo = VA.getLocReg(); Register RegHi = RVLocs[++i].getLocReg(); - if (STI.isRegisterReservedByUser(RegLo) || - STI.isRegisterReservedByUser(RegHi)) + if (Subtarget.isRegisterReservedByUser(RegLo) || + Subtarget.isRegisterReservedByUser(RegHi)) MF.getFunction().getContext().diagnose(DiagnosticInfoUnsupported{ MF.getFunction(), "Return value register required, but has been reserved."}); @@ -23501,7 +23500,7 @@ RISCVTargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv, Val = convertValVTToLocVT(DAG, Val, VA, DL, Subtarget); Chain = DAG.getCopyToReg(Chain, DL, VA.getLocReg(), Val, Glue); - if (STI.isRegisterReservedByUser(VA.getLocReg())) + if (Subtarget.isRegisterReservedByUser(VA.getLocReg())) MF.getFunction().getContext().diagnose(DiagnosticInfoUnsupported{ MF.getFunction(), "Return value register required, but has been reserved."}); @@ -23538,11 +23537,11 @@ RISCVTargetLowering::LowerReturn(SDValue Chain, CallingConv::ID CallConv, if (Kind == "supervisor") RetOpc = RISCVISD::SRET_GLUE; else if (Kind == "rnmi") { - assert(STI.hasFeature(RISCV::FeatureStdExtSmrnmi) && + assert(Subtarget.hasFeature(RISCV::FeatureStdExtSmrnmi) && "Need Smrnmi extension for rnmi"); RetOpc = RISCVISD::MNRET_GLUE; } else if (Kind == "qci-nest" || Kind == "qci-nonest") { - assert(STI.hasFeature(RISCV::FeatureVendorXqciint) && + assert(Subtarget.hasFeature(RISCV::FeatureVendorXqciint) && "Need Xqciint for qci-(no)nest"); RetOpc = RISCVISD::QC_C_MILEAVERET_GLUE; } else @@ -23556,10 +23555,9 @@ void RISCVTargetLowering::validateCCReservedRegs( const SmallVectorImpl> &Regs, MachineFunction &MF) const { const Function &F = MF.getFunction(); - const RISCVSubtarget &STI = MF.getSubtarget(); - if (llvm::any_of(Regs, [&STI](auto Reg) { - return STI.isRegisterReservedByUser(Reg.first); + if (llvm::any_of(Regs, [this](auto Reg) { + return Subtarget.isRegisterReservedByUser(Reg.first); })) F.getContext().diagnose(DiagnosticInfoUnsupported{ F, "Argument register required, but has been reserved."});