/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-fre1-details" } */

int x[1024];
int foo (int a, int s, unsigned int k)
{
  int i = a, j = a;
  int sum = 0;
  do
    {
      sum += x[i];
      sum += x[j];
      i += s;
      j += s;
    }
  while (k--);
  return sum;
}

/* We want to remove the redundant induction variable and thus its PHI node.  */
/* { dg-final { scan-tree-dump "Removing dead stmt \[^\r\n\]*PHI" "fre1" } } */
