[PATCH] D35693: [Driver][Darwin] Pass -munwind-table when !UseSjLjExceptions
Akira Hatanaka via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 28 16:17:59 PDT 2017
ahatanak added a comment.
In https://reviews.llvm.org/D35693#816994, @rjmccall wrote:
> Does the ARM64 ABI call for unwind tables to be emitted for all functions, like the x86-64 ABI does?
>
> Anyway, it seems pretty unfortunate that the default behavior breaks exceptions.
According to Nick Kledzik, the ARM64 ABI doesn't require unwind tables to be emitted for all functions, but the compiler has emitted the tables for all functions anyway. If I understood his explanation correctly, people often ran into problems when mixing C and C++ code because they forgot to use -fexceptions. Also, the compact unwind table is already small, so omitting it would most likely not make much difference in the size of the executable.
I'm also looking at r291172, which is the commit that directly caused this regression.
https://reviews.llvm.org/D35693
More information about the cfe-commits
mailing list