[PATCH] D108905: [ItaniumCXXABI] Add -fassume-nothrow-exception-dtor to assume that an exception object' destructor is nothrow

Chuanqi Xu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Oct 20 06:50:59 PDT 2023


ChuanqiXu added a comment.

LGTM since this is exactly what we do in the downstream. The effects of the change in our workloads is 4% size reduction in a coroutine intensive project. (But it requires the coroutine's final suspend can't except via symetric transfer. I was meant to send a paper to WG21 to discuss this).   After all, this should be a win for most projects.

We need to mention this in the docs and the ReleaseNotes since we add a new flag.

To make this self contained, we need to add a check in the frontend and emit errors if the compiler find the throwing exception's destructor may throw. This is not required in the current patch but it may be good to add a FIXME or TODO somewhere.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D108905



More information about the cfe-commits mailing list