------- Comment #3 from pinskia at gcc dot gnu dot org 2005-11-26 16:52 ------- k1=k2=0; e1=e2=0; for(;;) { if (!e1) if(k1<1111) { set n1 if (n1 <0) { .... break; } } if (!e2) if(k2<1111) { set n2 if (n2 <0) { .... break; } } } ... if (n1 < 0 || n2 < 0) return 1; L1: return 2;
------ The problem is that "n1 < 0 || n2 < 0" is being executed in one bb and not conditionaly -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21733