1 /* PR optimization/6475
2 Distilled from zlib sources. */
4 /* { dg-options "-O2" } */
5 /* { dg-options "-O2 -frename-registers -fomit-frame-pointer -fPIC -mtune=i686" { target i?86-*-* } } */
22 foo (unsigned int *b, unsigned int n, unsigned int s, const unsigned int *d,
23 const unsigned int *e, A **t, unsigned int *m, A *hp, unsigned int *hn,
26 unsigned int a, c[15 + 1], f;
34 unsigned int x[15 + 1], *xx;
38 *p++ = 0; *p++ = 0; *p++ = 0; *p++ = 0;
39 *p++ = 0; *p++ = 0; *p++ = 0; *p++ = 0;
40 *p++ = 0; *p++ = 0; *p++ = 0; *p++ = 0;
41 *p++ = 0; *p++ = 0; *p++ = 0; *p++ = 0;
54 for (j = 1; j <= 15; j++)
58 if ((unsigned int) l < j)
64 if ((unsigned int) l > i)
67 for (y = 1 << j; j < i; j++, y <<= 1)
102 z = z > (unsigned int) l ? l : z;
103 if ((f = 1 << (j = k - w)) > a + 1)
110 if ((f <<= 1) <= *++xx)
123 r.a0.a2.a4 = (unsigned char) l;
124 r.a0.a2.a3 = (unsigned char) j;
126 r.a1 = (unsigned int) (q - u[h - 1] - j);
132 r.a0.a2.a4 = (unsigned char) (k - w);
134 r.a0.a2.a3 = 128 + 64;
137 r.a0.a2.a3 = (unsigned char) (*p < 256 ? 0 : 32 + 64);
142 r.a0.a2.a3 = (unsigned char) (e[*p - s] + 16 + 64);
146 for (j = i >> w; j < z; j += f)
148 for (j = 1 << (k - 1); i & j; j >>= 1)
152 while ((i & ee) != x[h])
160 return y != 0 && g != 1 ? (-5) : 0;
163 unsigned int a[19] = { 3, 4, 0, 2, 2, [17] = 3, 3 };
170 unsigned int b = 0, c = 0;
172 foo (a, 19, 19, 0, 0, &e, &b, h, &c, d);