summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/execute/20030404-1.c
blob: 1dd1ec09906338b4b0259d241fdf93f7eb4537af (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* This exposed a bug in tree-ssa-ccp.c.  Since 'j' and 'i' are never
   defined, CCP was not traversing the edges out of the if(), which caused
   the PHI node for 'k' at the top of the while to only be visited once.
   This ended up causing CCP to think that 'k' was the constant '1'.  */
main()
{
  int i, j, k;

  k = 0;
  while (k < 10)
    {
      k++;
      if (j > i)
	j = 5;
      else
	j =3;
    }

  if (k != 10)
    abort ();

  return 0;
}