aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/pr44485.c
blob: 82f05f8ce6ae38a1cf568d8851770c643db2f934 (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
25
26
27
28
29
30
31
/* PR tree-optimization/44485 */
/* { dg-do compile } */
/* { dg-options "-O1 -funsafe-math-optimizations" } */

unsigned short b;
int bar (unsigned);

void
baz (void)
{
  if (bar (0))
    for (b = 0; b < 30; b++)
      ;
}

int
bar (unsigned z)
{
  unsigned short c;
  for (; ; z += 1)
l1:
    if (z)
      goto l2;
l2:
  for (z = 0; z < 9; z++)
    if (z)
      goto l1;
  for (c = 0; c; c = (__UINTPTR_TYPE__) baz)
    ;
  return 0;
}