[all-commits] [llvm/llvm-project] a74c7d: [win][aarch64] Always reserve frame pointers for A...
Daniel Paoliello via All-commits
all-commits at lists.llvm.org
Wed Jul 2 14:09:20 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a74c7d877637f31ff25308969ef7ca6ed94aacc5
https://github.com/llvm/llvm-project/commit/a74c7d877637f31ff25308969ef7ca6ed94aacc5
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-07-02 (Wed, 02 Jul 2025)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/frame-pointer-elim.c
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/test/CodeGen/AArch64/regress-w29-reserved-with-fp.ll
M llvm/test/CodeGen/AArch64/win-sve.ll
M llvm/test/CodeGen/AArch64/wincfi-missing-seh-directives.ll
M llvm/test/CodeGen/AArch64/wineh-frame5.mir
M llvm/test/CodeGen/AArch64/wineh-frame7.mir
Log Message:
-----------
[win][aarch64] Always reserve frame pointers for Arm64 Windows (#146582)
There is no way in Arm64 Windows to indicate that a given function has
used the Frame Pointer as a General Purpose Register, as such stack
walks will always assume that the frame chain is valid and will follow
whatever value has been saved for the Frame Pointer (even if it is
pointing to data, etc.).
This change makes the Frame Pointer always reserved when building for
Arm64 Windows to avoid this issue.
We will be updating the official Windows ABI documentation to reflect
this requirement, and I will provide a link once it's available.
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