1/* { dg-do compile } */
2/* { dg-options "-march=armv6-m -mthumb -O3 -w -mfloat-abi=soft" } */
3
4a, b, c, e, g = &e, h, i = 7, l = 1, m, n, o, q = &m, r, s = &r, u, w = 9, x,
5  y = 6, z, t6 = 7, t8, t9 = 1, t11 = 5, t12 = &t8, t13 = 3, t15,
6  t16 = &t15;
7struct {
8  long long f3;
9    char f4
10} p = {3}
11
12    ,
13  t = {4};
14
15struct S1 {
16  long long f0;
17  short f1;
18    long long f2
19} d;
20long long f = 4073709551613, t7 = 8, t14 = 4073709551610;
21j[];
22k = j;
23v = &d;
24*t10 = j;
25struct S1 fn1();
26struct S1 fn2() {
27  signed char t1;
28  struct S1 t2;
29  long t3 = x;
30  short t4 = h;
31  short *t5 = &l;
32  fn1(t2, w, 1, o);
33  if (u) {
34    l = q;
35    t1 = a < b ?: b;
36    z = c >= 2 || t1 << c;
37  }
38  *t5 = t4 &= t3;
39  fn3(y);
40}
41
42fn4() {
43  t6 = t.f3;
44  fn5(k, t7);
45}
46
47struct S1 fn1() {
48  f = 0;
49  for (; i;)
50    ;
51  t11 = 0;
52  t13 = *t10 = t14 || n;
53  t9 = t12;
54  for (; p.f4;)
55    s = t16 <= fn6();
56  if (g)
57    v = 0;
58}
59