[Bug middle-end/28545] [4.1 Regression] Wrong code for hoisted multiplication
rguenth at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Sat Oct 14 10:19:00 GMT 2006
------- Comment #8 from rguenth at gcc dot gnu dot org 2006-10-14 10:18 -------
Confirmed. Reduced testcase, -O -ftree-vrp
int solver_set(int);
void solver(int c, int r, char *number)
{
int cr = c*r;
int x, y, x2, y2, n, ret;
for (x = 0; x < cr; x++)
for (y = 0; y < r; y++)
for (n = 1; n <= cr; n++)
;
for (x = 0; x < cr; x += r)
for (y = 0; y < r; y++)
ret = solver_set(r*cr);
for (y = 0; y < cr; y++)
ret = solver_set(cr*cr);
for (x = 0; x < cr; x++)
ret = solver_set(cr);
for (n = 1; n <= cr; n++)
ret = solver_set(cr*cr);
for (y = 0; y+1 < cr; y++)
for (x = 0; x+1 < cr; x++)
for (y2 = y+1; y2 < cr; y2++)
for (x2 = x+1; x2 < cr; x2++)
if (x/r == x2/r && y%r == y2%r)
continue;
for (y = 0; y < cr; y++)
for (x = 0; x < cr; x++) {
for (n = 1; n <= cr; n++)
;
__builtin_memset(number, cr+1, cr*cr);
}
}
shows the failure in the t36.vrp1 dump.
--
rguenth 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-10-14 10:18:53
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28545
More information about the Gcc-bugs
mailing list