[PATCH] D135196: [AArch64][Windows] Add llvm-readobj support for save_any_reg unwind opcode.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 4 14:03:18 PDT 2022


efriedma created this revision.
efriedma added a reviewer: mstorsjo.
Herald added a subscriber: kristof.beyls.
Herald added a reviewer: jhenderson.
Herald added a project: All.
efriedma requested review of this revision.
Herald added a subscriber: MaskRay.
Herald added a project: LLVM.

This is primarily used for Arm64EC, but it could be used for other non-standard calling conventions.  The testcase is based on an Arm64EC thunk generated by MSVC.

The name save_any_reg comes from Microsoft documentation, but the full encoding isn't specified there; this is reverse-engineered from the behavior of the unwinder.  (Thanks to Martin Storsjö for his example of how to write simple unwinder testcases by directly calling RtlVirtualUnwind.)


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D135196

Files:
  llvm/test/tools/llvm-readobj/COFF/arm64-unwind-save_any_reg.s
  llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
  llvm/tools/llvm-readobj/ARMWinEHPrinter.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D135196.465147.patch
Type: text/x-patch
Size: 9287 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221004/62889ece/attachment.bin>


More information about the llvm-commits mailing list