https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84646
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |missed-optimization Status|UNCONFIRMED |NEW Last reconfirmed| |2018-03-01 CC| |law at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Component|c |tree-optimization Version|unknown |8.0.1 Ever confirmed|0 |1 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- I think this boils down to jump threading -- FSM threading should be able to notice that after setting running to false we should can exit the loop nest. Likely that doesn't work for the nest but just for the inner loop for some reason.