summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/unsorted/logic.c
blob: a9d6e9d0c2d47647334426698c5199c87f8f3fb8 (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
logic (a, b)
     int *a, b;
{
  if (*a & 123)
    b = 1;
  if (*a & ~222)
    b = 2;
  if (124 & *a)
    b = 3;
  if (~111 & *a)
    b = 4;

  if (~*a & 23)
    b = 1;
  if (~*a & ~22)
    b = 2;
  if (24 & ~*a)
    b = 3;
  if (~11 & ~*a)
    b = 4;

  if (~*a & b)
    b = 1;
  if (~*a & ~b)
    b = 2;
  if (*a & ~*a)
    b = 3;
  return b;
}

x (a, b, c)
{
  for (a = 0;  --a > 0;);
  for (b = -1; --b > 0;);
  for (c = -65536; --c > 0;);
  return a + b + c;
}