https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119491
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This fixes it but I am not sure about adding another cleanup eh pass:
diff --git a/gcc/passes.def b/gcc/passes.def
index 9fd85a35a63..d9fff4cf833 100644
--- a/gcc/passes.def
+++ b/gcc/passes.def
@@ -368,6 +368,7 @@ along with GCC; see the file COPYING3. If not see
real warnings (e.g., testsuite/gcc.dg/pr18501.c). */
NEXT_PASS (pass_cd_dce, false /* update_address_taken_p */);
NEXT_PASS (pass_sccopy);
+ NEXT_PASS (pass_cleanup_eh);
NEXT_PASS (pass_tail_calls);
/* Split critical edges before late uninit warning to reduce the
number of false positives from it. */