[PATCH] D125094: [ARM][Thumb] Command-line option to ensure AAPCS compliant Frame Records
Lucas Prates via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri May 13 07:42:29 PDT 2022
pratlucas marked an inline comment as done.
pratlucas added inline comments.
================
Comment at: llvm/lib/Target/ARM/Thumb1FrameLowering.cpp:242
+ // Find last push instruction for GPRCS2 - spilling of high registers
+ // (r8-r11) could consist of multiple tPUSH and tMOVr instructions.
+ while (true) {
----------------
efriedma wrote:
> It seems sort of fragile to assume the entry block doesn't contain any tPUSH instructions; we can use them in places other than the prologue. Can we use the FrameSetup flag?
This approach is fragile indeed, I guess the fact that high reg spills are less usual has helpep it go unnoticed for so long.
I've added the checks for the FrameSetup flag to make sure it doesn't run over into unrelated instructions.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D125094/new/
https://reviews.llvm.org/D125094
More information about the llvm-commits
mailing list