111
|
1 /* { dg-do compile } */
|
131
|
2 /* { dg-options "-O2 -fsplit-paths -fno-tree-cselim -fdump-tree-split-paths-details -w" } */
|
111
|
3
|
|
4 struct __sFILE
|
|
5 {
|
|
6 unsigned char *_p;
|
|
7 int _r;
|
|
8 };
|
|
9 typedef struct __sFILE __FILE;
|
|
10 struct _reent
|
|
11 {
|
|
12 __FILE *_stdin, *_stdout, *_stderr;
|
|
13 };
|
|
14 extern struct _reent *_impure_ptr;
|
|
15 extern char contextbufs[10][1024];
|
|
16 extern int contextoffset;
|
|
17 extern int sflag;
|
|
18 void
|
|
19 givehelp (interactive)
|
|
20 int interactive;
|
|
21 {
|
|
22 if (interactive)
|
|
23 {
|
|
24 while ((--((_impure_ptr->_stdin))->_r <
|
|
25 0 ? __srget_r (_impure_ptr,
|
|
26 (_impure_ptr->
|
|
27 _stdin)) : (int) (*((_impure_ptr->_stdin))->
|
|
28 _p++)) != ' ');
|
|
29 }
|
|
30 }
|
|
31
|
|
32 oof ()
|
|
33 {
|
|
34 int bufsize;
|
|
35 int hadnl;
|
|
36 while (1)
|
|
37 {
|
|
38 if (bufsize == (sizeof contextbufs[0]) / 2 - 1)
|
|
39 {
|
|
40 if (contextbufs[0][0] == '*' || contextbufs[0][0] == '@')
|
|
41 treeinsert (ichartosstr (strtosichar (contextbufs[0] + 1, 0), 1),
|
|
42 (100 + 4 * 20 + 4), contextbufs[0][0] == '*');
|
|
43 }
|
|
44 if (hadnl)
|
|
45 contextoffset = 0;
|
|
46 else
|
|
47 contextoffset += bufsize;
|
|
48 if (sflag)
|
|
49 {
|
|
50 stop ();
|
|
51 }
|
|
52 }
|
|
53 }
|
|
54
|
|
55 void
|
|
56 lookharder (string)
|
|
57 char *string;
|
|
58 {
|
|
59 register char *g;
|
|
60 register char *s;
|
|
61 for (s = string; *s != '\0'; s++)
|
|
62 {
|
|
63 if (*s == '*')
|
|
64 {
|
|
65 *g++ = '.';
|
|
66 }
|
|
67 else
|
|
68 *g++ = *s;
|
|
69 }
|
|
70 }
|
|
71
|
|
72 /* { dg-final { scan-tree-dump-times "Duplicating join block" 3 "split-paths" } } */
|