/* { dg-do compile } */
/* { dg-options "-O1 -funswitch-loops -fdump-tree-unswitch-details -fdump-tree-optimized" } */
/* LLVM LOCAL test not applicable */
/* { dg-require-fdump "" } */

int ch;
int a[100];

void xxx(void)
{
  int i;

  for (i = 0; i < 100; i++)
    {
      if (ch)
	a[i] = ch;
      else
	a[i] = i;
    }
}

/* Loop should be unswitched.  */

/* { dg-final { scan-tree-dump-times "Unswitching loop" 1 "unswitch" } } */
/* { dg-final { cleanup-tree-dump "unswitch" } } */

/* In effect there should be exactly three conditional jumps in the final program.  */

/* { dg-final { scan-tree-dump-times "else" 3 "optimized" } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
