/* PR tree-optimization/25501
   The PHI merge pass used to try to merge PHI nodes that cannot
   actually merged, causing a segfault later.  Make sure that does not
   happen any more.  */

/* { dg-options "-O1 -fdump-tree-mergephi" } */
/* LLVM LOCAL test not applicable */
/* { dg-require-fdump "" } */

int
foo (int a)
{
  int b;
  int c;
  int d;

  if (a == 2)
    b = 3;
  else
    b = 5;

  c = 7;

  d = 11;

  for (;;)
    {
      if (d == 5)
	break;

      d = b;
    }

  return 13;
}

/* { dg-final { scan-tree-dump-times "Removing basic block" 0 "mergephi"} } */
/* { dg-final { cleanup-tree-dump "mergephi" } } */
