[clang] [RISCV] Implement shadow stack on shadow stack mode with Zicfiss. (PR #68075)
Craig Topper via cfe-commits
cfe-commits at lists.llvm.org
Sat Oct 14 20:32:15 PDT 2023
================
@@ -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:
> > Do we need an enable other than just the feature being in -march? The shadow stack pointer has to be set up when the application starts.
>
> The hardware shadow stack support in this pr needs `-fsanitize=shadow-call-stack` now.
What if we're compiling for a platform that only uses the software shadow stack and does not support the hardware shadow stack even if the CPU supports it?
https://github.com/llvm/llvm-project/pull/68075
More information about the cfe-commits
mailing list