111
|
1 /* For PR rtl-optimization/27735 */
|
|
2 /* { dg-do compile } */
|
145
|
3 /* { dg-options "-O2 -funswitch-loops -fdump-tree-unswitch-details -fno-finite-loops" } */
|
111
|
4
|
|
5 void set_color(void);
|
|
6 void xml_colorize_line(unsigned int *p, int state)
|
|
7 {
|
|
8 int c;
|
|
9 switch(state)
|
|
10 {
|
|
11 case 1:
|
|
12 goto parse_tag;
|
|
13 case 2:
|
|
14 goto parse_comment;
|
|
15 }
|
|
16
|
|
17 for(;;)
|
|
18 {
|
|
19 c = *p;
|
|
20 if (c == '<' && state == 0)
|
|
21 {
|
|
22 parse_comment: ;
|
|
23 while (*p != '\n')
|
|
24 state = 3;
|
|
25 parse_tag: ;
|
|
26 while (*p != '\n')
|
|
27 state = 0;
|
|
28 set_color();
|
|
29 }
|
|
30 else
|
|
31 p++;
|
|
32 }
|
|
33 }
|
|
34
|
|
35 /* Test that we actually unswitched something. */
|
|
36 /* { dg-final { scan-tree-dump ";; Unswitching loop" "unswitch" } } */
|