1 /* PR debug/45055 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -ftracer -fsched-pressure -funroll-loops -fschedule-insns -fcompare-debug" } */
4 /* { dg-require-effective-target scheduling } */
5
6 int colormap[10];
7
8 extern int bar ();
9
10 void
foo(int * img,int fp,int y,int * ptr,int depth,int c,int t,int xm)11 foo (int *img, int fp, int y, int *ptr, int depth, int c, int t, int xm)
12 {
13 int x, color, count;
14 for (; y; y--)
15 {
16 if (depth)
17 {
18 count = bar ();
19 for (x = xm; x; x--)
20 {
21 if (c != 1)
22 count = color = -1;
23 if (count == 0)
24 color = count = bar ();
25 if (color)
26 t = bar (fp);
27 *ptr++ = colormap[t];
28 }
29 }
30 switch (*img)
31 {
32 case 1:
33 bar ();
34 case 3:
35 case -1:
36 case -3:
37 bar ();
38 case -4:
39 bar ();
40 }
41 }
42 }
43