[PATCH] D144999: [RFC][MC][MachO]Only emits compact-unwind format for "canonical" personality symbols. For the rest, use DWARFs.
James Y Knight via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 6 16:26:55 PST 2023
jyknight added a comment.
> +1 Agreed that impl simplicity should be prioritized.
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.
And hopefully with the linker fix proposed in an earlier comment to not waste the compact-unwind personality space on DWARF unwind functions, we should be good to go:
> To fix this, the linker should skip encoding a personality for the compact-unwind entry when the compact-unwind is MODE_DWARF. In lld, that's probably most easily done by setting cu.personality = nullptr instead of fde.personality in UnwindInfoSectionImpl::relocateCompactUnwind.
It shouldn't need a new linker flag.
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