summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr70110.c
blob: 42bbe3a956b445efeb4a09ee7da05ae981c82be7 (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
32
33
34
35
36
37
38
39
/* PR target/70110 */
/* { dg-do compile } */
/* { dg-options "-O3" } */
/* { dg-additional-options "-msse2" { target i?86-*-* x86_64-*-* } } */

int a, c, d, f, h;
long long b;

static inline void
foo (void)
{
  if (a) 
    foo ();
  b = c;
}

static inline void 
bar (int p)
{
  if (p)
    f = 0; 
  b |= c; 
} 

void
baz (int g, int i)
{
  for (b = d; (d = 1) != 0; )
    {
      if (a)
	foo ();
      b |= c;
      bar (h); 
      bar (g); 
      bar (h); 
      bar (i); 
      bar (h);
    }
}