[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records
Eli Friedman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri May 27 12:14:16 PDT 2022
efriedma added inline comments.
================
Comment at: llvm/lib/Target/ARM/ARMFrameLowering.cpp:732
+ // AAPCS requires use of R11, and PACBTI gets in the way of regular pushes,
+ // so FP ends up on area two.
if (HasFP) {
----------------
I guess this is related to this patch because it involves the interaction of PACBTI with -mframe_chain ? (Without this patch, PACBTI doesn't exist on any targets where the frame pointer is in r11.) I'm fine leaving it to a followup, though.
================
Comment at: llvm/lib/Target/ARM/Thumb1FrameLowering.cpp:1118
+
+ // Determine intermidiate registers which can be used for pushing high regs:
+ // - Spilled low regs
----------------
*intermediate.
================
Comment at: llvm/lib/Target/ARM/ThumbRegisterInfo.cpp:545
MI.getOperand(FIOperandNum+1).ChangeToRegister(FrameReg, false, false,
false);
} else if (MI.mayStore()) {
----------------
Do we need to do something different here if FrameReg is r11?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D125094/new/
https://reviews.llvm.org/D125094
More information about the cfe-commits
mailing list