[PATCH] D128806: [RISCV] Fix wrong position of prologue_end
Jessica Clarke via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 29 07:52:10 PDT 2022
jrtc27 added a comment.
Isn't the problem just that spill/restoreCalleeSavedRegisters need to set FrameSetup/Destroy on their stores/loads (which is also a problem with the generic implementation that we used to use before implementing -msave-restore)?
Annoyingly storeRegToStackSlot/loadRegFromStackSlot don't take a Flags argument to pass it through. X86 hacks around this with:
--MI;
MI->setFlag(MachineInstr::FrameSetup);
++MI;
after the call to storeRegToStackSlot (and doesn't bother for FrameDestroy, I guess that matters less, or people care about it less when debugging). I believe we can do the same hack, but we should probably fix it properly by adding a Flags argument to them, and update the generic implementation too.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D128806/new/
https://reviews.llvm.org/D128806
More information about the llvm-commits
mailing list