[compiler-rt] [libcxxabi] [libunwind] [runtimes][PAC] Harden unwinding when possible (#138571) (PR #143230)
Anatoly Trosinenko via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 18 13:35:22 PDT 2025
================
@@ -47,10 +47,11 @@ struct _LIBCXXABI_HIDDEN __cxa_exception {
// In Wasm, a destructor returns its argument
void *(_LIBCXXABI_DTOR_FUNC *exceptionDestructor)(void *);
#else
- void (_LIBCXXABI_DTOR_FUNC *exceptionDestructor)(void *);
+ void(_LIBCXXABI_DTOR_FUNC* _LIBCXXABI_PTRAUTH_FN("__cxa_exception::exceptionDestructor")
+ exceptionDestructor)(void*);
#endif
- std::unexpected_handler unexpectedHandler;
- std::terminate_handler terminateHandler;
+ std::unexpected_handler _LIBCXXABI_PTRAUTH_FN("__cxa_exception::unexpectedHandler") unexpectedHandler;
+ std::terminate_handler _LIBCXXABI_PTRAUTH_FN("__cxa_exception::terminateHandler") terminateHandler;
----------------
atrosinenko wrote:
Are these strings (or, strictly speaking, their hashes) part of public ABI? If so, it may be handy to put them into `ptrauth.h`, like it is already done for [`__ptrauth_init_fini_discriminator`](https://github.com/llvm/llvm-project/blob/8c3fbaf0ee7322e948403d2234a7230bd6137c98/clang/lib/Headers/ptrauth.h#L260).
https://github.com/llvm/llvm-project/pull/143230
More information about the llvm-commits
mailing list