================ @@ -106,9 +111,14 @@ static void emitSCSEpilogue(MachineFunction &MF, MachineBasicBlock &MBB, CSI, [&](CalleeSavedInfo &CSR) { return CSR.getReg() == RAReg; })) return; + const RISCVInstrInfo *TII = STI.getInstrInfo(); + if (STI.hasFeature(RISCV::FeatureStdExtZicfiss)) { ---------------- topperc wrote:
As @samitolvanen wrote earlier the SSPUSH and SSPOPCHK instruction fall back to NOPs based on configuration. > If the kernel doesn't support Zicfiss, it presumably also hasn't enabled the > extension for U-mode. Therefore, my understanding is that the application > loader can simply skip shadow stack setup for the program, including the > prctl (which would fail with -EINVAL), and since the Zicfiss (Zimop) > instructions are no-ops when the extension is disabled, the program would run > normally, just without shadow stacks. Does this sound correct? https://github.com/llvm/llvm-project/pull/68075 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits