[PATCH] D84044: [AArch64][SVE] Add missing unwind info for SVE registers.

Sander de Smalen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 24 09:44:12 PDT 2020


sdesmalen added a comment.

In D84044#2170905 <https://reviews.llvm.org/D84044#2170905>, @efriedma wrote:

> > I asked @rsandifo-arm about this, who suggested that the unwinder restores the callee-saved registers in the base ABI only, i.e. normal returns preserve extra registers, but exceptional returns don't.
>
> I don't think I've ever seen a target do that, but I guess there isn't any reason it can't work like this.  Does clang need additional changes to support this, though?


No changes are needed in Clang to support this AFAIK.

> It's unfortunate for debuggers, though; they also use "unwind" data to print the values of variables in different stack frames, so I'm not sure how that's supposed to work.

Perhaps if LLVM would have a way to distinguish the unwind data (e.g. with debug context or without), it would be possible to generate two different kinds of CFI instructions.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D84044/new/

https://reviews.llvm.org/D84044





More information about the llvm-commits mailing list