https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106923
--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:5321d53279a60ee589a3c9779beb46503f9fc49f commit r13-5728-g5321d53279a60ee589a3c9779beb46503f9fc49f Author: Jakub Jelinek <ja...@redhat.com> Date: Tue Feb 7 10:34:45 2023 +0100 ipa-split: Don't split returns_twice functions [PR106923] As discussed in the PR, returns_twice functions are rare/special beasts that need special treatment in the cfg, and inside of their bodies we don't know which part actually works the weird returns twice way (either in the fork/vfork sense, or in the setjmp) and aren't updating ab edges to reflect that. I think easiest is just to never split these, like we already never split noreturn or malloc functions. 2023-02-07 Jakub Jelinek <ja...@redhat.com> PR tree-optimization/106923 * ipa-split.cc (execute_split_functions): Don't split returns_twice functions. * gcc.dg/pr106923.c: New test.