summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr84799.c
blob: 2b3a48f9e346444eb2cddcf1d730a2355beb50f1 (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
/* { dg-do compile } */
/* { dg-options "-O" } */

int a, g;
long b, f;
short c, d, e;

static void fn1 ()
{
  if (a)
    {
      long i = 5, j = b / i | c;
      int k = b % (d % i) & j;
      short l = ~f % (-d / j ^ -e), m = e << (d - l);
      if (k)
        m = d;
      i = d | (i & b);
      g = (c | ~f) % i + l;
      e = (c - f) & e;
      d = m;
    }
}

int main ()
{
  b |= 1;
  fn1 ();
  return 0; 
}