[PATCH] D131153: AArch64: disable asynchronous unwind by default for MachO.

Tim Northover via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 4 02:50:12 PDT 2022


t.p.northover created this revision.
Herald added subscribers: kristof.beyls, mcrosier.
Herald added a project: All.
t.p.northover requested review of this revision.
Herald added a subscriber: MaskRay.
Herald added a project: clang.

AArch64 MachO has a compact unwind format where most functions' unwind info can be represented in just 4 bytes. But this cannot represent any asynchronous CFI function, so it's essentially disabled when that's used. This is a large code-size hit that we'd rather not take unless explicitly requested.

So this patch adds a new callback to switch the default on ARM64 MachO to synchronous. Command-line options can still turn it on if anyone wants to take the hit.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D131153

Files:
  clang/include/clang/Driver/ToolChain.h
  clang/lib/Driver/ToolChains/Clang.cpp
  clang/lib/Driver/ToolChains/Darwin.cpp
  clang/lib/Driver/ToolChains/Darwin.h
  clang/test/Driver/clang-translation.c
  clang/test/Preprocessor/unwind-tables.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D131153.449920.patch
Type: text/x-patch
Size: 4494 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220804/4ecc9243/attachment-0001.bin>


More information about the cfe-commits mailing list