1/* { dg-do compile } */
2/* { dg-options "-O2 -fdump-tree-pre-stats -std=c99" } */
3int foo(int k, int *x)
4{
5  int j=0;
6  int res = 0;
7  /* We should pull res = *x all the way out of the do-while */
8  do {
9    for (int n=0;n<3;++n);
10    res = *x;
11  }  while (++j<k);
12  return res;
13}
14/* { dg-final { scan-tree-dump-times "Eliminated: 1" 1 "pre"} } */
15/* { dg-final { cleanup-tree-dump "pre" } } */
16