https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79787
Ilya Enkovich <ienkovich at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ienkovich at gcc dot gnu.org --- Comment #3 from Ilya Enkovich <ienkovich at gcc dot gnu.org> --- This code in remove_unreachable_nodes is supposed to prevent removal of fn1. Thusly we remove node which is not considered as unreachable by remove_unreachable_nodes. Did you try to find out how fn1 node is removed and prevent it?