[all-commits] [llvm/llvm-project] 12f392: [AArch64][SME] Support `aarch64-split-sve-objects`...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Tue Nov 4 05:39:41 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 12f392cff10fcc70b4ec4f01ab386922742e9136
      https://github.com/llvm/llvm-project/commit/12f392cff10fcc70b4ec4f01ab386922742e9136
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-11-04 (Tue, 04 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.h
    M llvm/test/CodeGen/AArch64/framelayout-split-sve.mir
    M llvm/test/CodeGen/AArch64/split-sve-stack-frame-layout.ll
    M llvm/test/CodeGen/AArch64/stack-hazard.ll

  Log Message:
  -----------
  [AArch64][SME] Support `aarch64-split-sve-objects` with VLAs/realignment (#163816)

This was left out of the original patch (#142392) to simplify the
initial implementation. However, after refactoring the SVE
prologue/epilogue code in #162253, it's not much of an extension to
support this case.

The main change here is when restoring the SP from the FP for the SVE
restores, we may need an additional frame offset to move from the start
of the ZPR callee-saves to the start of the PPR callee-saves.

This patch also fixes a previously latent bug where we'd add the
`RealignmentPadding` when allocating the PPR locals, then again for the
ZPR locals. This was unnecessary as the stack only needs to be realigned
after all SVE allocations.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list