------- 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