1 /* { dg-do compile } */
2 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
3 /* { dg-final { scan-assembler-not "\\\$f\[0-9\]+" } } */
4 int a, b, d, e, j, k, n, o;
5 unsigned c, h, i, l, m, p;
6 int *f;
7 int *g;
fn1(int p1)8 int fn1(int p1) { return p1 - a; }
9 
fn2()10 int fn2() {
11   b = b + 1 - a;
12   e = 1 + o + 1518500249;
13   d = d + n;
14   c = (int)c + g[0];
15   b = b + m + 1;
16   d = d + p + 1518500249;
17   d = d + k - 1;
18   c = fn1(c + j + 1518500249);
19   e = fn1(e + i + 1);
20   d = d + h + 1859775393 - a;
21   c = fn1(c + (d ^ 1 ^ b) + g[1] + 1);
22   b = fn1(b + m + 3);
23   d = fn1(d + l + 1);
24   b = b + (c ^ 1) + p + 1;
25   e = fn1(e + (b ^ c ^ d) + n + 1);
26   d = o;
27   b = 0;
28   e = e + k + 1859775393;
29   f[0] = e;
30   return a;
31 }
32