[PATCH] D15139: [IR] Reformulate LLVM's EH funclet IR
David Majnemer via llvm-commits
llvm-commits at lists.llvm.org
Wed Dec 2 23:27:40 PST 2015
majnemer added inline comments.
================
Comment at: lib/CodeGen/WinEHPrepare.cpp:1858-1860
@@ -1857,5 +817,2 @@
}
- // FIXME: Check for invokes/cleanuprets/cleanupendpads which unwind to
- // implausible catchendpads (i.e. catchendpad not in immediate parent
- // funclet).
}
----------------
Thinking this over, it is not enough for the catchpad to be deleted even if it is immediately followed by unreachable. For the C++ personality, the catchpad denotes program code executed by the personality routine (copy constructors for catch parameters). While grotesque, it is conceivable that the copy-constructor never returns and continues to call other functions, etc.
AFAICT, it is OK if the catch-parameter's type will not result in copy-constructors getting executed.
http://reviews.llvm.org/D15139
More information about the llvm-commits
mailing list