[PATCH] D108905: [ItaniumCXXABI] Add -fassume-nothrow-exception-dtor to assume that an exception object' destructor is nothrow
Fangrui Song via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 30 23:47:17 PDT 2023
MaskRay marked an inline comment as done.
MaskRay added inline comments.
================
Comment at: clang/lib/CodeGen/ItaniumCXXABI.cpp:4435-4448
struct CallEndCatch final : EHScopeStack::Cleanup {
CallEndCatch(bool MightThrow) : MightThrow(MightThrow) {}
bool MightThrow;
void Emit(CodeGenFunction &CGF, Flags flags) override {
if (!MightThrow) {
CGF.EmitNounwindRuntimeCall(getEndCatchFn(CGF.CGM));
----------------
ChuanqiXu wrote:
> If `__cxa_end_catch ` is nounwind always now, do we need to refactor this one? Like:
> ```
> struct CallEndCatch final : EHScopeStack::Cleanup {
> CallEndCatch() {}
>
> void Emit(CodeGenFunction &CGF, Flags flags) override {
> CGF.EmitNounwindRuntimeCall(getEndCatchFn(CGF.CGM));
> }
> };
> ```
Since `__cxa_end_catch` is no longer `nounwind` in the latest revision, we cannot simplify the code...
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