blob: de8a643d9e218f1c4dbb53d59727bee1267b8f51 [file] [log] [blame]
/* PR rtl-optimization/104459 */
/* { dg-do compile } */
/* { dg-options "-O2 -funswitch-loops -fno-tree-dce -fcompare-debug -w" } */
void
foo (int x, int y)
{
unsigned int a;
for (;;)
{
short int *p = (short int *) &x;
unsigned int q = 0;
a /= 2;
if (a)
{
q -= y;
while (q)
;
}
if (x)
{
for (q = 0; q != 1; q += 2)
{
unsigned int n;
n = *p ? 0 : q;
y += n < 1;
n = a || *p;
if (n % x == 0)
y /= x;
}
}
}
}