/* { dg-do run } */
/* { dg-options "-O3 -fno-dce -fno-forward-propagate" } */

void __attribute__ ((noinline, noclone))
foo (int *a, int n)
{
  int *lasta = a + n;
  for (; a != lasta; a++)
    {
      *a *= 2;
      a[1] = a[-1] + a[-2];
    }
}

int
main ()
{
  int a[16] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };
  int r[16] = { 1, 2, 6, 6, 16, 24, 44, 80,
		136, 248, 432, 768, 1360, 2400, 4256, 3760 };
  unsigned i;
  foo (&a[2], 13);
  for (i = 0; i < 8; ++i)
    if (a[i] != r[i])
      __builtin_abort ();
  return 0;
}
