https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79891
--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> --- Yes, the merged is the issue, but looks it's created at the very beginning: test.c.004t.gimple: ... <D.2315>: if (false_var != 0) goto <D.2317>; else goto <D.2318>; <D.2317>: ret = 111; <D.2318>: goto <D.2319>; <D.2316>: ret = 999; <D.2319>: D.2320 = ret; return D.2320;