[clang] [llvm] [AArch64][SME] Save VG for unwind info when changing streaming-mode (PR #83301)

Sander de Smalen via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 5 09:18:14 PDT 2024


================
@@ -8287,6 +8289,13 @@ AArch64TargetLowering::LowerCall(CallLoweringInfo &CLI,
 
   SDValue InGlue;
   if (RequiresSMChange) {
+
+    if (Subtarget->hasSVE()) {
----------------
sdesmalen-arm wrote:

@efriedma-quic I think the issue is that when we emit unwind info that is _not_ asynchronous, then the unwinder can't correctly unwind the stack because it would use the wrong value for VG to compute the offsets of callee-saves. So any unwind info that would be produced is broken.

https://github.com/llvm/llvm-project/pull/83301


More information about the llvm-commits mailing list