https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108868
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I think the reason why it doesn't work is clear, call_can_make_abnormal_goto on the vfork call is false, because it is leaf (and that is how glibc declares vfork BTW) and ctrl_altering flag is initialized by gimple_call_initialize_ctrl_altering based on that or if it is noreturn etc. (nothing applies). So, I think as discussed in another PR, I think we really should make if not call_can_make_abnormal_goto at least gimple_call_initialize_ctrl_altering be true for RETURNS_TWICE calls.