================ @@ -974,17 +974,20 @@ void RISCVFrameLowering::emitPrologue(MachineFunction &MF, emitCFIForCSI<CFISaveRegisterEmitter>(MBB, MBBI, getUnmanagedCSI(MF, CSI)); // Generate new FP. - if (hasFP(MF) && RVFI->getPushPopKind(MF) != - RISCVMachineFunctionInfo::PushPopKind::VendorXqccmp) { + if (hasFP(MF)) { if (STI.isRegisterReservedByUser(FPReg)) MF.getFunction().getContext().diagnose(DiagnosticInfoUnsupported{ MF.getFunction(), "Frame pointer required, but has been reserved."}); // The frame pointer does need to be reserved from register allocation. assert(MF.getRegInfo().isReserved(FPReg) && "FP not reserved"); - RI->adjustReg(MBB, MBBI, DL, FPReg, SPReg, - StackOffset::getFixed(RealStackSize - RVFI->getVarArgsSaveSize()), - MachineInstr::FrameSetup, getStackAlign()); + // Xqxxmp with hasFP will update FP using `qc.cm.pushfp`, so we don't need ---------------- topperc wrote:
Xqccmp* https://github.com/llvm/llvm-project/pull/128815 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits