aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-cse-2.c
blob: 07fbbbe546bde44f7ad7d2db122a0f88c5d89902 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* { dg-do compile } */
/* { dg-options "-O3 -fno-tree-fre -fno-tree-pre -fdump-tree-optimized" } */

int
foo ()
{
  const int a[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
  int i, sum;

  sum = 0;
  for (i = 0; i < sizeof (a) / sizeof (*a); i++)
    sum += a[i];

  return sum;
}

/* After late unrolling the above loop completely DOM should be
   able to optimize this to return 28.  */

/* See PR63679, if the target forces the initializer to memory then
   DOM is not able to perform this optimization.  */

/* { dg-final { scan-tree-dump "return 28;" "optimized" { xfail hppa*-*-* } } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */