Merge from mainline.
[official-gcc.git] / gcc / testsuite / gcc.dg / 20020222-1.c
blob61f10540f2a0faa9f33a49c8cbf7e543fd1f2ebf
1 /* PR optimization/5747
2 This testcase ICEd on sparc because move_movables created new pseudos,
3 but did not update reg info which load_mems needed. */
4 /* { dg-do compile } */
5 /* { dg-options "-O2" } */
6 /* { dg-options "-O2 -fPIC" { target sparc*-*-* } } */
8 extern void foo (void);
9 static char a[256];
11 void
12 bar (void)
14 unsigned int i;
15 static int b = 0;
16 int c;
18 if (b == 0)
20 b = 1;
21 foo ();
22 c = 0;
23 for (i = 0; i < 10; i++)
24 a[i + '0'] = c++;
25 for (i = 'A'; i <= 'Z'; i++)
26 a[i] = c++;
27 a['$'] = c++;
28 a['%'] = c++;
29 a['.'] = c++;
30 a['_'] = c++;
31 for (i = 'a'; i <= 'z'; i++)
32 a[i] = c++;