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

Eli Friedman via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 3 15:59:31 PDT 2024


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

There are two different kinds of DWARF "unwind info"; one is the kind that's in a loadable section, and used for EH. The other is in a debug info section, not loaded at runtime.  If you specify `-fasynchronous-unwind-tables`, you get the former; if you specify `-g -fno-asynchronous-unwind-tables`, you get the latter.

If you request no debug info and no unwind tables, we shouldn't emit any DWARF directives.

But like I mentioned, I think we want to unconditionally emit the code to save the VG, whether or not we emit the corresponding DWARF directives.

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


More information about the cfe-commits mailing list