[PATCH] D137381: [clang][compiler-rt] Exception escape out of an non-unwinding function is an undefined behaviour

Roman Lebedev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 15 17:55:43 PST 2022


lebedev.ri marked an inline comment as done.
lebedev.ri added inline comments.


================
Comment at: clang/lib/CodeGen/CodeGenFunction.h:2028
+    // FIXME: what about FuncletPads?
+    if (llvm::BasicBlock *InvokeBB = Builder.GetInsertBlock();
+        SanOpts.has(SanitizerKind::ExceptionEscape) &&
----------------
rjmccall wrote:
> The purpose of `getInvokeDestImpl` is to outline the slow path, and this definitely belongs in the slow path.
The problem is that we aggressively cache all the EH stuff.
I will take a second look, maybe this can be done less intrusively.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D137381



More information about the cfe-commits mailing list