[PATCH] D144999: [RFC][MC][MachO]Only emits compact-unwind format for "canonical" personality symbols. For the rest, use DWARFs.

Jez Ng via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 6 16:41:30 PST 2023


int3 added a comment.

> With a goal of simplicity, I think we should just go back to the earlier proposal: Clang emits all functions with a personality other than the 3 canonical personalities as DWARF unwind ONLY. Agreed we can have a flag to opt-into compact unwind here, if a user knows it'll be ok in their build.

Okay yeah this sounds good. The advantage it has over my `--prefer-dwarf-unwind` proposal is that it will work by default + does not require a new linker flag.

> And if my Swift test case is representative, I guess Swift doesn't actually need a personality function then we don't have to worry about that either.

It has been pointed out to me that Swift "exceptions" are just syntax sugar over return statements, so no unwind / personality functions are involved.

Thanks for taking the time to hash things out!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D144999



More information about the llvm-commits mailing list