[PATCH] D76570: [AArch64] Homogeneous Prolog and Epilog for Size Optimization
Kyungwoo Lee via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 30 10:49:45 PDT 2020
kyulee added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:229
+ return false;
+ if (!produceCompactUnwindFrame(MF))
+ return false;
----------------
dmgreen wrote:
> Can you explain what CompactUnwindFrame is, and why it's needed for this to work? I'm not really an expert on Frame Lowering, but is there a way to get this to work without that restriction?
This guarantees a pair register use and the ordering of CSR save locations are fixed, which simplifies the current logic for correctness. An immediate remedy to this is to support the non-pair register case, but I'm not either an expert for all other platforms and calling conventions, and I'm not sure how I test and validate such a relaxation. I think probably it's better leaving this extension to folks who know the details for their platforms.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D76570/new/
https://reviews.llvm.org/D76570
More information about the llvm-commits
mailing list