------- Comment #6 from pinskia at gcc dot gnu dot org  2006-01-15 20:08 -------
What really should happen is that we should change the loop to be something
like which helps a different bug too (I cannot find it right now but it has to
do with pulling stuff out of the loops):
void bar(void);
void foo(int ie, int je)
{
  int i, j;
  if (0<je && 0 <ie)
  {
  j = 0;
  do {
  do {
   i  =0;
      bar(); 
    i++;
  } while (i < ie);
  j++;
  } while (j < ie);
}


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-01-15 20:08:39
               date|                            |
            Summary|Should not do loop header   |loop header should also be
                   |copying for inner loop      |pulled out of the inner loop
                   |                            |too


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23855

Reply via email to