[all-commits] [llvm/llvm-project] cf55b9: [AArch64][Darwin][SME] Don't try to save VG to the...
Sander de Smalen via All-commits
all-commits at lists.llvm.org
Mon Dec 2 23:30:55 PST 2024
Branch: refs/heads/release/19.x
Home: https://github.com/llvm/llvm-project
Commit: cf55b9cb8af3ce3fa776e46e6ad71155a7d38c75
https://github.com/llvm/llvm-project/commit/cf55b9cb8af3ce3fa776e46e6ad71155a7d38c75
Author: Amara Emerson <amara at apple.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sme-darwin-no-sve-vg.ll
Log Message:
-----------
[AArch64][Darwin][SME] Don't try to save VG to the stack for unwinding.
On Darwin we don't have any hardware that has SVE support, only SME.
Therefore we don't need to save VG for unwinders and can safely omit it.
This also fixes crashes introduced since this feature landed since Darwin's
compact unwind code can't handle the presence of VG anyway.
rdar://131072344
Commit: 4716c4752fd56692bcca775606a2650418eb3be8
https://github.com/llvm/llvm-project/commit/4716c4752fd56692bcca775606a2650418eb3be8
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/sme-darwin-sve-vg.ll
Log Message:
-----------
[AArch64][SME] Return false from produceCompactUnwindFrame if VG save required. (#104588)
The compact unwind format requires all registers are stored in pairs, so
return false from produceCompactUnwindFrame if we require saving VG.
Commit: 876d0501d312b7303423fc4d3c388174a1465ca5
https://github.com/llvm/llvm-project/commit/876d0501d312b7303423fc4d3c388174a1465ca5
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-12-03 (Tue, 03 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
Log Message:
-----------
[AArch64][SME] Fix iterator to fixupCalleeSaveRestoreStackOffset (#110855)
The iterator passed to `fixupCalleeSaveRestoreStackOffset` may be
incorrect when it tries to skip over the instructions that get the
current value of 'vg', when there is a 'rdsvl' instruction straight
after the prologue. That's because it doesn't check that the instruction
is still a 'frame-setup' instruction.
Compare: https://github.com/llvm/llvm-project/compare/e6bcdea700dc...876d0501d312
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