akirilov-arm requested cfallin for a review on PR #2823.
akirilov-arm opened PR #2823 from callee_saves
to main
:
SIMD & FP registers are now saved and restored in pairs, similarly to general-purpose registers. Also, the fix for issue #2254 has enabled us to save and to restore only the bottom 64 bits of the registers (in case of non-Baldrdash ABIs), which is the requirement from the Procedure Call Standard for the Arm 64-bit Architecture.
As for the callee-saved general-purpose registers, if a procedure needs to save and restore an odd number of them, it no longer uses store and load pair instructions for the last register.
cfallin submitted PR Review.
cfallin submitted PR Review.
cfallin created PR Review Comment:
A comment here to explain the strategies for both cases would make it a bit clearer, I think -- something like "The Baldrdash ABI saves whole (16-byte) clobbered vector registers, so there is no need to worry about 16-byte stack alignment. The SystemV (AAPCS) ABI saves half (8-byte) clobbered vector registers, so we round up if odd."?
akirilov-arm updated PR #2823 from callee_saves
to main
.
akirilov-arm updated PR #2823 from callee_saves
to main
.
cfallin merged PR #2823.
Last updated: Dec 23 2024 at 12:05 UTC