Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
go
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
go
Commits
278d4a58
Commit
278d4a58
authored
May 04, 2012
by
Shenghou Ma
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cmd/5c, cmd/5a, cmd/5l: ARM support for PREFETCH built-in
R=rsc CC=golang-dev
https://golang.org/cl/6174049
parent
df644489
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
306 additions
and
287 deletions
+306
-287
src/cmd/5a/a.y
src/cmd/5a/a.y
+1
-1
src/cmd/5a/y.tab.c
src/cmd/5a/y.tab.c
+282
-283
src/cmd/5c/peep.c
src/cmd/5c/peep.c
+1
-0
src/cmd/5c/reg.c
src/cmd/5c/reg.c
+8
-0
src/cmd/5c/txt.c
src/cmd/5c/txt.c
+7
-1
src/cmd/5l/asm.c
src/cmd/5l/asm.c
+6
-1
src/cmd/5l/optab.c
src/cmd/5l/optab.c
+1
-1
No files found.
src/cmd/5a/a.y
View file @
278d4a58
...
...
@@ -304,7 +304,7 @@ inst:
/*
* PLD
*/
| LTYPEPLD reg
| LTYPEPLD
o
reg
{
outcode($1, Always, &$2, NREG, &nullgen);
}
...
...
src/cmd/5a/y.tab.c
View file @
278d4a58
...
...
@@ -448,7 +448,7 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 2
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 60
9
#define YYLAST 60
3
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 70
...
...
@@ -549,7 +549,7 @@ static const yytype_int8 yyrhs[] =
77
,
102
,
63
,
104
,
63
,
95
,
63
,
96
,
63
,
96
,
103
,
-
1
,
34
,
77
,
90
,
63
,
90
,
63
,
91
,
-
1
,
35
,
77
,
90
,
63
,
90
,
63
,
90
,
63
,
95
,
-
1
,
37
,
90
,
-
1
,
26
,
78
,
-
1
,
-
1
,
77
,
52
,
-
1
,
37
,
87
,
-
1
,
26
,
78
,
-
1
,
-
1
,
77
,
52
,
-
1
,
77
,
53
,
-
1
,
-
1
,
63
,
78
,
-
1
,
102
,
66
,
42
,
67
,
-
1
,
57
,
100
,
-
1
,
58
,
100
,
-
1
,
68
,
102
,
-
1
,
68
,
87
,
-
1
,
68
,
10
,
68
,
87
,
-
1
,
68
,
...
...
@@ -586,16 +586,16 @@ static const yytype_uint16 yyrline[] =
93
,
99
,
100
,
101
,
107
,
111
,
115
,
122
,
129
,
136
,
140
,
147
,
154
,
161
,
168
,
175
,
184
,
196
,
200
,
204
,
211
,
218
,
222
,
229
,
236
,
243
,
250
,
254
,
258
,
262
,
269
,
291
,
298
,
307
,
31
5
,
321
,
324
,
328
,
333
,
334
,
33
7
,
343
,
352
,
360
,
366
,
371
,
376
,
382
,
385
,
391
,
39
9
,
403
,
412
,
418
,
419
,
420
,
421
,
426
,
432
,
438
,
44
4
,
445
,
448
,
449
,
457
,
466
,
467
,
476
,
477
,
483
,
48
6
,
487
,
488
,
490
,
498
,
506
,
515
,
521
,
527
,
533
,
54
1
,
547
,
555
,
556
,
560
,
568
,
569
,
575
,
576
,
584
,
58
5
,
588
,
594
,
602
,
610
,
618
,
628
,
631
,
635
,
641
,
64
2
,
643
,
646
,
647
,
651
,
655
,
659
,
663
,
669
,
672
,
67
8
,
679
,
683
,
687
,
691
,
695
,
699
,
703
,
707
,
711
,
71
5
269
,
291
,
298
,
307
,
31
4
,
320
,
323
,
327
,
332
,
333
,
33
6
,
342
,
351
,
359
,
365
,
370
,
375
,
381
,
384
,
390
,
39
8
,
402
,
411
,
417
,
418
,
419
,
420
,
425
,
431
,
437
,
44
3
,
444
,
447
,
448
,
456
,
465
,
466
,
475
,
476
,
482
,
48
5
,
486
,
487
,
489
,
497
,
505
,
514
,
520
,
526
,
532
,
54
0
,
546
,
554
,
555
,
559
,
567
,
568
,
574
,
575
,
583
,
58
4
,
587
,
593
,
601
,
609
,
617
,
627
,
630
,
634
,
640
,
64
1
,
642
,
645
,
646
,
650
,
654
,
658
,
662
,
668
,
671
,
67
7
,
678
,
682
,
686
,
690
,
694
,
698
,
702
,
706
,
710
,
71
4
};
#endif
...
...
@@ -684,28 +684,28 @@ static const yytype_uint8 yydefact[] =
0
,
11
,
4
,
0
,
13
,
0
,
0
,
0
,
48
,
48
,
0
,
48
,
0
,
0
,
48
,
48
,
0
,
0
,
112
,
106
,
113
,
0
,
0
,
0
,
0
,
0
,
0
,
44
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
96
,
93
,
0
,
92
,
43
,
95
,
84
,
7
,
0
,
5
,
0
,
12
,
46
,
47
,
0
,
0
,
81
,
80
,
82
,
84
,
0
,
0
,
101
,
67
,
68
,
0
,
0
,
64
,
57
,
0
,
75
,
79
,
70
,
63
,
6
5
,
71
,
77
,
69
,
0
,
49
,
106
,
106
,
22
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
30
,
115
,
114
,
0
,
0
,
0
,
0
,
120
,
0
,
116
,
0
,
0
,
0
,
48
,
35
,
0
,
0
,
0
,
100
,
0
,
99
,
0
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
0
,
0
,
83
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
58
,
56
,
54
,
53
,
0
,
0
,
0
,
0
,
106
,
19
,
20
,
72
,
73
,
0
,
51
,
52
,
0
,
23
,
0
,
0
,
48
,
0
,
0
,
0
,
0
,
106
,
107
,
108
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
117
,
31
,
0
,
110
,
109
,
111
,
0
,
0
,
34
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
8
,
9
,
6
,
10
,
16
,
84
,
0
,
0
,
0
,
0
,
17
,
0
,
74
,
59
,
0
,
18
,
0
,
0
,
0
,
51
,
0
,
0
,
48
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
0
,
130
,
129
,
128
,
0
,
0
,
121
,
122
,
123
,
124
,
125
,
0
,
103
,
0
,
36
,
0
,
101
,
37
,
48
,
0
,
0
,
94
,
15
,
86
,
90
,
91
,
87
,
88
,
89
,
102
,
55
,
0
,
66
,
78
,
7
6
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
75
,
79
,
43
,
77
,
0
,
7
,
0
,
5
,
0
,
12
,
96
,
93
,
0
,
92
,
46
,
47
,
0
,
0
,
81
,
80
,
82
,
95
,
84
,
0
,
0
,
101
,
67
,
68
,
0
,
64
,
57
,
0
,
70
,
6
3
,
65
,
71
,
69
,
0
,
49
,
106
,
106
,
22
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
84
,
30
,
115
,
114
,
0
,
0
,
0
,
0
,
120
,
0
,
116
,
0
,
0
,
0
,
48
,
35
,
0
,
0
,
0
,
100
,
0
,
99
,
0
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
83
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
58
,
56
,
54
,
53
,
0
,
0
,
106
,
19
,
20
,
72
,
73
,
0
,
51
,
52
,
0
,
23
,
0
,
0
,
48
,
0
,
0
,
0
,
0
,
106
,
107
,
108
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
117
,
31
,
0
,
110
,
109
,
111
,
0
,
0
,
34
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
74
,
0
,
0
,
8
,
9
,
6
,
10
,
0
,
16
,
84
,
0
,
0
,
0
,
0
,
17
,
0
,
59
,
0
,
18
,
0
,
51
,
0
,
0
,
48
,
0
,
0
,
0
,
0
,
0
,
48
,
0
,
0
,
130
,
129
,
128
,
0
,
0
,
121
,
122
,
123
,
124
,
125
,
0
,
103
,
0
,
36
,
0
,
101
,
37
,
48
,
0
,
0
,
78
,
76
,
94
,
15
,
86
,
90
,
91
,
87
,
88
,
89
,
102
,
55
,
6
6
,
50
,
24
,
0
,
61
,
62
,
0
,
29
,
48
,
28
,
0
,
104
,
126
,
127
,
32
,
33
,
0
,
0
,
39
,
0
,
0
,
14
,
26
,
25
,
27
,
0
,
0
,
38
,
0
,
41
,
0
,
...
...
@@ -716,59 +716,59 @@ static const yytype_uint8 yydefact[] =
/* YYDEFGOTO[NTERM-NUM]. */
static
const
yytype_int16
yydefgoto
[]
=
{
-
1
,
1
,
3
,
32
,
14
6
,
144
,
33
,
35
,
105
,
108
,
9
3
,
94
,
178
,
95
,
169
,
96
,
97
,
98
,
81
,
82
,
8
3
,
308
,
84
,
268
,
71
,
72
,
316
,
136
,
101
,
102
,
12
3
,
204
,
124
,
327
,
125
-
1
,
1
,
3
,
32
,
14
9
,
147
,
33
,
35
,
105
,
108
,
9
6
,
97
,
179
,
98
,
170
,
67
,
68
,
99
,
84
,
85
,
8
6
,
308
,
87
,
271
,
88
,
117
,
316
,
137
,
102
,
70
,
12
4
,
205
,
125
,
327
,
126
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -11
9
#define YYPACT_NINF -11
4
static
const
yytype_int16
yypact
[]
=
{
-
11
9
,
29
,
-
119
,
283
,
-
9
,
-
119
,
-
119
,
-
119
,
-
119
,
-
23
,
-
11
9
,
-
119
,
-
119
,
-
119
,
-
119
,
407
,
407
,
-
119
,
-
23
,
-
23
,
-
11
9
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
-
23
,
383
,
-
24
,
16
,
18
,
-
119
,
-
119
,
25
,
-
119
,
196
,
196
,
320
,
52
,
-
23
,
374
,
52
,
196
,
342
,
294
,
52
,
447
,
447
,
-
119
,
125
,
-
11
9
,
447
,
447
,
45
,
47
,
109
,
174
,
-
119
,
62
,
98
,
3
82
,
130
,
98
,
174
,
174
,
69
,
-
119
,
-
119
,
80
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
447
,
-
119
,
447
,
-
119
,
-
119
,
-
11
9
,
447
,
96
,
-
119
,
-
119
,
-
119
,
24
,
105
,
95
,
-
119
,
-
119
,
-
119
,
360
,
101
,
-
119
,
-
119
,
108
,
-
119
,
-
119
,
-
119
,
-
119
,
119
,
-
119
,
127
,
131
,
401
,
-
119
,
76
,
76
,
-
119
,
141
,
224
,
111
,
383
,
154
,
149
,
69
,
162
,
-
119
,
-
119
,
-
119
,
221
,
447
,
447
,
163
,
-
119
,
40
,
-
119
,
409
,
170
,
447
,
-
23
,
-
119
,
167
,
171
,
2
,
-
119
,
176
,
-
119
,
181
,
183
,
184
,
383
,
-
119
,
447
,
283
,
530
,
283
,
540
,
-
119
,
383
,
244
,
245
,
251
,
260
,
383
,
447
,
206
,
441
,
208
,
-
119
,
-
119
,
-
119
,
131
,
224
,
383
,
110
,
282
,
125
,
-
119
,
-
119
,
-
11
9
,
-
119
,
213
,
-
119
,
-
119
,
238
,
-
119
,
383
,
220
,
9
,
222
,
110
,
225
,
69
,
76
,
-
119
,
-
119
,
170
,
447
,
447
,
4
47
,
285
,
287
,
447
,
447
,
447
,
447
,
447
,
-
119
,
-
119
,
247
,
-
119
,
-
119
,
-
119
,
263
,
248
,
-
119
,
71
,
447
,
276
,
79
,
71
,
383
,
383
,
56
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
271
,
360
,
360
,
360
,
360
,
-
119
,
268
,
-
119
,
-
119
,
415
,
-
119
,
270
,
277
,
281
,
163
,
60
,
293
,
-
23
,
280
,
383
,
383
,
383
,
383
,
286
,
297
,
311
,
589
,
579
,
597
,
447
,
4
47
,
211
,
211
,
-
119
,
-
119
,
-
119
,
284
,
-
119
,
62
,
-
119
,
520
,
318
,
-
119
,
-
23
,
321
,
322
,
-
119
,
383
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
-
119
,
131
,
-
119
,
-
119
,
-
119
,
-
11
9
,
-
119
,
453
,
-
119
,
-
119
,
327
,
-
119
,
77
,
-
119
,
347
,
-
11
9
,
478
,
478
,
-
119
,
-
119
,
383
,
71
,
-
119
,
330
,
383
,
-
11
9
,
-
119
,
-
119
,
-
119
,
326
,
334
,
-
119
,
383
,
-
119
,
33
7
,
-
11
9
,
115
,
340
,
383
,
341
,
-
119
,
350
,
383
,
-
119
,
447
,
1
15
,
354
,
86
,
367
,
-
119
,
-
119
,
447
,
-
119
,
570
-
11
4
,
19
,
-
114
,
311
,
-
20
,
-
114
,
-
114
,
-
114
,
-
114
,
-
36
,
-
11
4
,
-
114
,
-
114
,
-
114
,
-
114
,
413
,
413
,
-
114
,
-
36
,
-
36
,
-
11
4
,
-
114
,
-
114
,
-
114
,
-
114
,
-
114
,
-
36
,
427
,
-
22
,
-
9
,
-
7
,
-
114
,
-
114
,
11
,
-
114
,
480
,
480
,
341
,
45
,
-
36
,
229
,
45
,
480
,
210
,
436
,
45
,
435
,
435
,
-
114
,
152
,
-
11
4
,
435
,
435
,
25
,
15
,
79
,
517
,
-
114
,
24
,
134
,
3
93
,
197
,
134
,
517
,
517
,
28
,
71
,
-
114
,
-
114
,
-
114
,
35
,
58
,
-
114
,
435
,
-
114
,
435
,
-
114
,
-
114
,
-
114
,
6
9
,
-
114
,
-
114
,
-
114
,
435
,
51
,
-
114
,
-
114
,
-
114
,
-
114
,
46
,
57
,
75
,
-
114
,
-
114
,
-
114
,
119
,
-
114
,
-
114
,
82
,
-
114
,
-
114
,
88
,
-
114
,
58
,
368
,
-
114
,
159
,
159
,
-
114
,
113
,
373
,
114
,
411
,
120
,
123
,
28
,
145
,
-
114
,
-
114
,
-
114
,
-
114
,
193
,
435
,
435
,
173
,
-
114
,
54
,
-
114
,
395
,
111
,
435
,
-
36
,
-
114
,
178
,
182
,
21
,
-
114
,
198
,
-
114
,
201
,
207
,
212
,
411
,
-
114
,
206
,
168
,
558
,
311
,
310
,
311
,
506
,
435
,
-
114
,
411
,
271
,
274
,
285
,
286
,
411
,
435
,
87
,
228
,
-
114
,
-
114
,
-
114
,
58
,
373
,
411
,
152
,
-
114
,
-
11
4
,
-
114
,
-
114
,
231
,
-
114
,
-
114
,
257
,
-
114
,
411
,
235
,
5
,
259
,
168
,
275
,
28
,
159
,
-
114
,
-
114
,
111
,
435
,
4
35
,
435
,
333
,
344
,
435
,
435
,
435
,
435
,
435
,
-
114
,
-
114
,
289
,
-
114
,
-
114
,
-
114
,
300
,
308
,
-
114
,
151
,
435
,
319
,
176
,
151
,
411
,
411
,
-
114
,
317
,
322
,
-
114
,
-
114
,
-
114
,
-
114
,
224
,
-
114
,
312
,
71
,
71
,
71
,
71
,
-
114
,
323
,
-
114
,
427
,
-
114
,
328
,
173
,
64
,
329
,
-
36
,
315
,
411
,
411
,
411
,
411
,
334
,
339
,
332
,
577
,
247
,
584
,
4
35
,
435
,
273
,
273
,
-
114
,
-
114
,
-
114
,
340
,
-
114
,
24
,
-
114
,
350
,
351
,
-
114
,
-
36
,
353
,
365
,
-
114
,
-
114
,
-
114
,
411
,
-
114
,
-
114
,
-
114
,
-
114
,
-
114
,
-
114
,
-
114
,
-
114
,
-
114
,
-
11
4
,
-
114
,
439
,
-
114
,
-
114
,
364
,
-
114
,
157
,
-
114
,
398
,
-
11
4
,
518
,
518
,
-
114
,
-
114
,
411
,
151
,
-
114
,
374
,
411
,
-
11
4
,
-
114
,
-
114
,
-
114
,
382
,
394
,
-
114
,
411
,
-
114
,
39
7
,
-
11
4
,
155
,
403
,
411
,
392
,
-
114
,
404
,
411
,
-
114
,
435
,
1
55
,
401
,
299
,
406
,
-
114
,
-
114
,
435
,
-
114
,
568
};
/* YYPGOTO[NTERM-NUM]. */
static
const
yytype_int16
yypgoto
[]
=
{
-
11
9
,
-
119
,
-
119
,
-
73
,
-
119
,
-
119
,
-
119
,
547
,
-
6
,
332
,
-
50
,
376
,
-
60
,
-
82
,
-
119
,
-
46
,
-
39
,
-
86
,
-
15
,
-
118
,
-
22
,
-
119
,
-
27
,
152
,
-
111
,
-
35
,
118
,
-
119
,
-
45
,
8
,
-
8
1
,
255
,
132
,
-
119
,
6
-
11
4
,
-
114
,
-
114
,
-
78
,
-
114
,
-
114
,
-
114
,
529
,
2
,
367
,
-
50
,
415
,
48
,
-
88
,
-
114
,
-
48
,
-
40
,
-
21
,
47
,
-
113
,
-
19
,
-
114
,
-
28
,
137
,
-
59
,
-
35
,
154
,
-
114
,
-
49
,
1
8
,
-
8
3
,
295
,
-
11
,
-
114
,
-
25
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
...
...
@@ -778,132 +778,132 @@ static const yytype_int16 yypgoto[] =
#define YYTABLE_NINF -61
static
const
yytype_int16
yytable
[]
=
{
8
5
,
85
,
85
,
40
,
113
,
70
,
161
,
85
,
131
,
199
,
1
00
,
209
,
57
,
58
,
132
,
99
,
137
,
138
,
239
,
14
2
,
65
,
86
,
116
,
53
,
55
,
173
,
174
,
111
,
176
,
2
,
150
,
151
,
104
,
152
,
130
,
110
,
73
,
74
,
115
,
117
,
39
,
139
,
140
,
188
,
189
,
190
,
191
,
192
,
193
,
19
4
,
1
95
,
196
,
197
,
34
,
232
,
233
,
156
,
159
,
170
,
188
,
1
89
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
182
,
233
,
215
,
39
,
217
,
-
60
,
85
,
75
,
179
,
153
,
7
6
,
145
,
230
,
147
,
100
,
121
,
122
,
234
,
77
,
99
,
188
,
1
89
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
201
,
202
,
203
,
236
,
244
,
78
,
79
,
156
,
198
,
127
,
46
,
157
,
158
,
171
,
128
,
220
,
39
,
66
,
87
,
88
,
67
,
1
29
,
68
,
69
,
266
,
206
,
87
,
261
,
219
,
85
,
23
1
,
92
,
120
,
225
,
121
,
122
,
141
,
100
,
243
,
293
,
48
,
39
,
99
,
237
,
275
,
87
,
88
,
143
,
54
,
54
,
214
,
78
,
79
,
67
,
325
,
68
,
69
,
159
,
160
,
49
,
149
,
50
,
155
,
259
,
314
,
315
,
262
,
263
,
91
,
154
,
103
,
52
,
163
,
109
,
240
,
177
,
114
,
87
,
88
,
118
,
119
,
284
,
285
,
78
,
79
,
126
,
164
,
269
,
269
,
269
,
269
,
2
64
,
265
,
133
,
165
,
246
,
247
,
248
,
166
,
134
,
251
,
252
,
253
,
254
,
255
,
283
,
179
,
179
,
175
,
294
,
201
,
202
,
203
,
148
,
66
,
260
,
181
,
67
,
180
,
68
,
69
,
286
,
195
,
196
,
197
,
162
,
183
,
78
,
79
,
184
,
187
,
207
,
281
,
46
,
47
,
208
,
66
,
172
,
288
,
67
,
210
,
68
,
69
,
103
,
301
,
211
,
300
,
212
,
213
,
78
,
79
,
221
,
306
,
222
,
185
,
186
,
291
,
292
,
297
,
223
,
200
,
305
,
2
05
,
48
,
66
,
80
,
303
,
67
,
224
,
68
,
69
,
87
,
88
,
312
,
227
,
89
,
90
,
229
,
309
,
318
,
235
,
236
,
49
,
321
,
50
,
4
,
238
,
241
,
226
,
242
,
119
,
91
,
249
,
92
,
52
,
250
,
103
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
256
,
258
,
19
,
20
,
21
,
22
,
23
,
24
,
25
,
26
,
27
,
201
,
202
,
203
,
67
,
322
,
68
,
69
,
46
,
47
,
257
,
228
,
328
,
66
,
267
,
274
,
67
,
277
,
68
,
69
,
28
,
29
,
30
,
282
,
278
,
31
,
78
,
79
,
279
,
287
,
4
6
,
47
,
80
,
270
,
270
,
270
,
270
,
39
,
48
,
66
,
280
,
276
,
67
,
289
,
68
,
69
,
87
,
88
,
46
,
47
,
89
,
90
,
78
,
79
,
271
,
272
,
273
,
49
,
290
,
50
,
48
,
296
,
46
,
47
,
298
,
299
,
91
,
304
,
92
,
52
,
46
,
47
,
302
,
310
,
78
,
79
,
307
,
311
,
48
,
66
,
313
,
50
,
67
,
317
,
68
,
69
,
112
,
319
,
91
,
46
,
47
,
52
,
48
,
320
,
114
,
46
,
47
,
46
,
47
,
50
,
48
,
324
,
66
,
46
,
47
,
67
,
51
,
68
,
69
,
5
2
,
326
,
106
,
107
,
50
,
78
,
79
,
168
,
135
,
323
,
48
,
51
,
50
,
245
,
52
,
0
,
48
,
0
,
48
,
51
,
46
,
47
,
52
,
0
,
48
,
0
,
46
,
47
,
0
,
167
,
107
,
50
,
46
,
47
,
0
,
49
,
0
,
50
,
91
,
50
,
0
,
52
,
0
,
49
,
51
,
50
,
51
,
52
,
80
,
52
,
48
,
0
,
91
,
0
,
0
,
52
,
48
,
193
,
194
,
195
,
196
,
197
,
48
,
0
,
0
,
0
,
0
,
228
,
0
,
0
,
0
,
50
,
0
,
0
,
0
,
0
,
0
,
50
,
51
,
0
,
0
,
52
,
0
,
50
,
51
,
0
,
0
,
52
,
0
,
0
,
91
,
0
,
0
,
52
,
188
,
189
,
190
,
191
,
192
,
193
,
194
,
19
5
,
196
,
197
,
188
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
188
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
36
,
37
,
38
,
0
,
41
,
42
,
43
,
44
,
45
,
0
,
0
,
56
,
0
,
0
,
59
,
60
,
6
1
,
62
,
63
,
64
,
188
,
189
,
190
,
191
,
192
,
193
,
194
,
19
5
,
196
,
197
,
295
,
190
,
191
,
192
,
193
,
194
,
195
,
19
6
,
197
,
216
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
218
,
191
,
192
,
193
,
194
,
195
,
196
,
197
8
9
,
89
,
89
,
113
,
54
,
54
,
69
,
89
,
132
,
101
,
1
33
,
40
,
138
,
139
,
240
,
200
,
71
,
143
,
100
,
2
,
57
,
58
,
177
,
174
,
175
,
116
,
103
,
39
,
65
,
109
,
210
,
144
,
114
,
53
,
55
,
119
,
120
,
131
,
72
,
73
,
104
,
127
,
34
,
110
,
140
,
141
,
115
,
118
,
148
,
13
4
,
1
50
,
74
,
154
,
155
,
75
,
156
,
171
,
189
,
190
,
191
,
1
92
,
193
,
194
,
195
,
196
,
197
,
198
,
183
,
39
,
218
,
-
60
,
220
,
152
,
76
,
164
,
89
,
162
,
180
,
233
,
4
6
,
47
,
129
,
101
,
90
,
165
,
235
,
216
,
217
,
128
,
111
,
1
30
,
100
,
95
,
173
,
142
,
46
,
47
,
81
,
82
,
103
,
157
,
145
,
245
,
202
,
203
,
204
,
237
,
144
,
39
,
48
,
77
,
186
,
187
,
78
,
153
,
79
,
80
,
201
,
224
,
206
,
1
58
,
199
,
172
,
217
,
146
,
48
,
222
,
46
,
160
,
16
1
,
50
,
89
,
234
,
207
,
223
,
151
,
244
,
51
,
101
,
229
,
52
,
159
,
231
,
238
,
293
,
166
,
50
,
100
,
230
,
120
,
202
,
203
,
204
,
51
,
167
,
103
,
52
,
48
,
121
,
260
,
122
,
123
,
263
,
264
,
247
,
248
,
249
,
122
,
123
,
252
,
253
,
254
,
255
,
256
,
162
,
163
,
49
,
178
,
50
,
176
,
91
,
92
,
241
,
181
,
261
,
66
,
81
,
82
,
52
,
182
,
2
72
,
272
,
272
,
272
,
265
,
266
,
77
,
91
,
92
,
78
,
185
,
79
,
80
,
314
,
315
,
283
,
180
,
180
,
184
,
294
,
78
,
278
,
79
,
80
,
273
,
273
,
273
,
273
,
46
,
47
,
39
,
71
,
91
,
262
,
286
,
291
,
292
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
46
,
47
,
188
,
281
,
208
,
301
,
91
,
92
,
209
,
288
,
306
,
48
,
81
,
82
,
300
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
305
,
2
11
,
81
,
82
,
212
,
135
,
297
,
48
,
303
,
50
,
213
,
114
,
312
,
215
,
112
,
214
,
66
,
225
,
318
,
52
,
309
,
226
,
321
,
196
,
197
,
198
,
106
,
107
,
50
,
284
,
285
,
269
,
227
,
228
,
322
,
51
,
232
,
236
,
52
,
237
,
239
,
328
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
4
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
242
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
243
,
250
,
19
,
20
,
21
,
22
,
23
,
24
,
25
,
26
,
27
,
46
,
4
7
,
251
,
257
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
274
,
275
,
276
,
325
,
258
,
28
,
29
,
30
,
259
,
219
,
31
,
231
,
270
,
46
,
47
,
282
,
48
,
77
,
46
,
47
,
78
,
267
,
79
,
80
,
91
,
92
,
268
,
277
,
93
,
94
,
81
,
82
,
279
,
280
,
287
,
49
,
290
,
50
,
46
,
47
,
46
,
47
,
289
,
48
,
66
,
83
,
95
,
52
,
48
,
77
,
295
,
296
,
78
,
298
,
79
,
80
,
91
,
92
,
46
,
47
,
93
,
94
,
168
,
107
,
50
,
299
,
30
2
,
49
,
48
,
50
,
48
,
66
,
46
,
47
,
52
,
304
,
66
,
307
,
95
,
52
,
46
,
47
,
81
,
82
,
46
,
47
,
310
,
77
,
48
,
50
,
78
,
50
,
79
,
80
,
311
,
319
,
51
,
313
,
51
,
52
,
83
,
52
,
48
,
317
,
320
,
324
,
326
,
49
,
169
,
50
,
48
,
323
,
77
,
136
,
48
,
78
,
51
,
79
,
80
,
52
,
246
,
49
,
0
,
50
,
0
,
81
,
82
,
0
,
0
,
0
,
66
,
50
,
0
,
52
,
0
,
50
,
39
,
0
,
51
,
0
,
0
,
52
,
66
,
0
,
0
,
52
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
77
,
0
,
0
,
78
,
0
,
79
,
80
,
194
,
195
,
196
,
197
,
19
8
,
0
,
81
,
82
,
0
,
36
,
37
,
38
,
0
,
41
,
42
,
43
,
44
,
45
,
0
,
0
,
56
,
0
,
83
,
59
,
60
,
61
,
62
,
63
,
64
,
0
,
77
,
0
,
0
,
78
,
0
,
79
,
80
,
0
,
0
,
0
,
0
,
0
,
221
,
8
1
,
82
,
189
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
19
8
,
190
,
191
,
192
,
193
,
194
,
195
,
196
,
197
,
198
,
19
2
,
193
,
194
,
195
,
196
,
197
,
198
,
202
,
203
,
204
,
78
,
0
,
79
,
80
};
static
const
yytype_int16
yycheck
[]
=
{
35
,
36
,
37
,
9
,
43
,
27
,
92
,
42
,
58
,
127
,
37
,
9
,
18
,
19
,
59
,
37
,
61
,
62
,
9
,
65
,
26
,
36
,
44
,
15
,
16
,
106
,
107
,
42
,
110
,
0
,
6
,
7
,
38
,
9
,
56
,
41
,
60
,
61
,
44
,
45
,
63
,
63
,
64
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
62
,
165
,
166
,
91
,
55
,
104
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
115
,
181
,
144
,
63
,
146
,
65
,
110
,
60
,
112
,
54
,
61
,
74
,
163
,
76
,
110
,
8
,
9
,
167
,
62
,
110
,
3
,
35
,
36
,
37
,
43
,
15
,
16
,
27
,
42
,
58
,
37
,
59
,
9
,
61
,
62
,
9
,
128
,
27
,
65
,
37
,
0
,
18
,
19
,
110
,
106
,
107
,
44
,
37
,
63
,
26
,
40
,
9
,
66
,
43
,
15
,
16
,
46
,
47
,
56
,
60
,
61
,
38
,
52
,
62
,
41
,
63
,
64
,
44
,
45
,
73
,
60
,
75
,
60
,
6
,
7
,
61
,
9
,
104
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
115
,
63
,
147
,
65
,
149
,
83
,
62
,
95
,
110
,
55
,
112
,
166
,
8
,
9
,
66
,
110
,
36
,
95
,
168
,
145
,
146
,
63
,
42
,
11
,
110
,
68
,
104
,
66
,
8
,
9
,
52
,
53
,
110
,
54
,
66
,
185
,
39
,
40
,
41
,
42
,
142
,
63
,
38
,
39
,
122
,
123
,
42
,
63
,
44
,
45
,
128
,
153
,
130
,
63
,
67
,
104
,
182
,
66
,
38
,
151
,
8
,
9
,
10
,
59
,
166
,
167
,
131
,
153
,
66
,
184
,
66
,
166
,
158
,
69
,
66
,
55
,
178
,
257
,
63
,
59
,
166
,
159
,
160
,
39
,
40
,
41
,
66
,
66
,
166
,
69
,
38
,
6
,
208
,
8
,
9
,
211
,
212
,
189
,
190
,
191
,
8
,
9
,
194
,
195
,
196
,
197
,
198
,
55
,
56
,
57
,
63
,
59
,
66
,
46
,
47
,
180
,
63
,
209
,
66
,
52
,
53
,
69
,
66
,
225
,
226
,
227
,
228
,
213
,
214
,
39
,
46
,
47
,
42
,
7
,
44
,
45
,
48
,
49
,
240
,
241
,
242
,
63
,
259
,
42
,
232
,
44
,
45
,
225
,
226
,
227
,
228
,
8
,
9
,
63
,
232
,
46
,
47
,
243
,
250
,
251
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
8
,
9
,
66
,
238
,
63
,
282
,
46
,
47
,
63
,
244
,
296
,
38
,
52
,
53
,
270
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
295
,
63
,
52
,
53
,
63
,
68
,
264
,
38
,
287
,
59
,
63
,
282
,
307
,
67
,
64
,
63
,
66
,
6
,
313
,
69
,
299
,
7
,
317
,
10
,
11
,
12
,
57
,
58
,
59
,
241
,
242
,
67
,
7
,
7
,
319
,
66
,
68
,
66
,
69
,
42
,
65
,
326
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
1
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
64
,
13
,
14
,
15
,
16
,
17
,
18
,
19
,
20
,
21
,
22
,
23
,
24
,
25
,
26
,
63
,
6
,
29
,
30
,
31
,
32
,
33
,
34
,
35
,
36
,
37
,
8
,
9
,
7
,
63
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
226
,
227
,
228
,
67
,
67
,
57
,
58
,
59
,
63
,
62
,
62
,
55
,
63
,
8
,
9
,
63
,
38
,
39
,
8
,
9
,
42
,
67
,
44
,
45
,
46
,
47
,
67
,
67
,
50
,
51
,
52
,
53
,
67
,
67
,
63
,
57
,
67
,
59
,
8
,
9
,
8
,
9
,
66
,
38
,
66
,
68
,
68
,
69
,
38
,
39
,
63
,
63
,
42
,
63
,
44
,
45
,
46
,
47
,
8
,
9
,
50
,
51
,
57
,
58
,
59
,
63
,
65
,
57
,
38
,
59
,
38
,
66
,
8
,
9
,
69
,
40
,
66
,
66
,
68
,
69
,
8
,
9
,
52
,
53
,
8
,
9
,
67
,
39
,
38
,
59
,
42
,
59
,
44
,
45
,
63
,
66
,
66
,
63
,
66
,
69
,
68
,
69
,
38
,
63
,
63
,
67
,
63
,
57
,
104
,
59
,
38
,
320
,
39
,
61
,
38
,
42
,
66
,
44
,
45
,
69
,
188
,
57
,
-
1
,
59
,
-
1
,
52
,
53
,
-
1
,
-
1
,
-
1
,
66
,
59
,
-
1
,
69
,
-
1
,
59
,
63
,
-
1
,
66
,
-
1
,
-
1
,
69
,
66
,
-
1
,
-
1
,
69
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
39
,
40
,
41
,
42
,
184
,
52
,
53
,
141
,
67
,
63
,
8
,
9
,
10
,
104
,
66
,
149
,
63
,
39
,
46
,
47
,
42
,
11
,
44
,
45
,
67
,
130
,
46
,
47
,
149
,
163
,
164
,
68
,
6
,
154
,
8
,
9
,
66
,
163
,
183
,
256
,
38
,
63
,
163
,
177
,
229
,
46
,
47
,
66
,
15
,
16
,
143
,
52
,
53
,
42
,
67
,
44
,
45
,
55
,
56
,
57
,
63
,
59
,
66
,
207
,
48
,
49
,
210
,
211
,
66
,
63
,
37
,
69
,
63
,
40
,
179
,
63
,
43
,
46
,
47
,
46
,
47
,
240
,
241
,
52
,
53
,
52
,
66
,
221
,
222
,
223
,
224
,
212
,
213
,
60
,
66
,
188
,
189
,
190
,
66
,
68
,
193
,
194
,
195
,
196
,
197
,
239
,
240
,
241
,
66
,
258
,
39
,
40
,
41
,
80
,
39
,
208
,
66
,
42
,
63
,
44
,
45
,
242
,
10
,
11
,
12
,
92
,
63
,
52
,
53
,
7
,
66
,
63
,
237
,
8
,
9
,
63
,
39
,
104
,
243
,
42
,
63
,
44
,
45
,
110
,
282
,
63
,
267
,
63
,
63
,
52
,
53
,
6
,
296
,
7
,
121
,
122
,
249
,
250
,
263
,
7
,
127
,
295
,
129
,
38
,
39
,
68
,
287
,
42
,
7
,
44
,
45
,
46
,
47
,
307
,
67
,
50
,
51
,
68
,
299
,
313
,
66
,
42
,
57
,
317
,
59
,
1
,
65
,
64
,
155
,
63
,
157
,
66
,
6
,
68
,
69
,
7
,
163
,
13
,
14
,
15
,
16
,
17
,
18
,
19
,
20
,
21
,
22
,
23
,
24
,
25
,
26
,
63
,
63
,
29
,
30
,
31
,
32
,
33
,
34
,
35
,
36
,
37
,
39
,
40
,
41
,
42
,
319
,
44
,
45
,
8
,
9
,
67
,
55
,
326
,
39
,
63
,
67
,
42
,
67
,
44
,
45
,
57
,
58
,
59
,
63
,
67
,
62
,
52
,
53
,
67
,
63
,
8
,
9
,
68
,
221
,
222
,
223
,
224
,
63
,
38
,
39
,
67
,
229
,
42
,
66
,
44
,
45
,
46
,
47
,
8
,
9
,
50
,
51
,
52
,
53
,
222
,
223
,
224
,
57
,
67
,
59
,
38
,
63
,
8
,
9
,
63
,
63
,
66
,
40
,
68
,
69
,
8
,
9
,
65
,
67
,
52
,
53
,
66
,
63
,
38
,
39
,
63
,
59
,
42
,
63
,
44
,
45
,
64
,
66
,
66
,
8
,
9
,
69
,
38
,
63
,
282
,
8
,
9
,
8
,
9
,
59
,
38
,
67
,
39
,
8
,
9
,
42
,
66
,
44
,
45
,
69
,
63
,
57
,
58
,
59
,
52
,
53
,
104
,
61
,
320
,
38
,
66
,
59
,
187
,
69
,
-
1
,
38
,
-
1
,
38
,
66
,
8
,
9
,
69
,
-
1
,
38
,
-
1
,
8
,
9
,
-
1
,
57
,
58
,
59
,
8
,
9
,
-
1
,
57
,
-
1
,
59
,
66
,
59
,
-
1
,
69
,
-
1
,
57
,
66
,
59
,
66
,
69
,
68
,
69
,
38
,
-
1
,
66
,
-
1
,
-
1
,
69
,
38
,
8
,
9
,
10
,
11
,
12
,
38
,
-
1
,
-
1
,
-
1
,
-
1
,
55
,
-
1
,
-
1
,
-
1
,
59
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
59
,
66
,
-
1
,
-
1
,
69
,
-
1
,
59
,
66
,
-
1
,
-
1
,
69
,
-
1
,
-
1
,
66
,
-
1
,
-
1
,
69
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
6
,
7
,
8
,
-
1
,
10
,
11
,
12
,
13
,
14
,
-
1
,
-
1
,
17
,
-
1
,
-
1
,
20
,
21
,
22
,
23
,
24
,
25
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
63
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
62
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
62
,
6
,
7
,
8
,
9
,
10
,
11
,
12
-
1
,
-
1
,
42
,
-
1
,
44
,
45
,
8
,
9
,
10
,
11
,
12
,
-
1
,
52
,
53
,
-
1
,
6
,
7
,
8
,
-
1
,
10
,
11
,
12
,
13
,
14
,
-
1
,
-
1
,
17
,
-
1
,
68
,
20
,
21
,
22
,
23
,
24
,
25
,
-
1
,
39
,
-
1
,
-
1
,
42
,
-
1
,
44
,
45
,
-
1
,
-
1
,
-
1
,
-
1
,
-
1
,
62
,
52
,
53
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
39
,
40
,
41
,
42
,
-
1
,
44
,
45
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
...
...
@@ -916,28 +916,28 @@ static const yytype_uint8 yystos[] =
59
,
62
,
73
,
76
,
62
,
77
,
77
,
77
,
77
,
63
,
78
,
77
,
77
,
77
,
77
,
77
,
8
,
9
,
38
,
57
,
59
,
66
,
69
,
99
,
102
,
99
,
77
,
78
,
78
,
77
,
77
,
77
,
77
,
77
,
77
,
78
,
39
,
42
,
44
,
45
,
9
0
,
94
,
95
,
60
,
61
,
60
,
61
,
62
,
52
,
53
,
68
,
88
,
89
,
90
,
92
,
95
,
88
,
46
,
47
,
50
,
51
,
66
,
68
,
80
,
81
,
83
,
85
,
86
,
87
,
90
,
9
2
,
98
,
99
,
102
,
78
,
78
,
57
,
58
,
79
,
102
,
78
,
88
,
64
,
86
,
102
,
78
,
90
,
78
,
102
,
102
,
6
,
8
,
9
,
100
,
102
,
104
,
102
,
63
,
66
,
11
,
90
,
80
,
98
,
102
,
68
,
81
,
97
,
98
,
98
,
90
,
90
,
66
,
85
,
66
,
75
,
104
,
74
,
104
,
102
,
63
,
6
,
7
,
9
,
54
,
63
,
66
,
95
,
9
,
10
,
55
,
56
,
87
,
102
,
63
,
66
,
66
,
66
,
57
,
79
,
84
,
8
5
,
99
,
102
,
100
,
100
,
66
,
83
,
63
,
82
,
95
,
63
,
66
,
85
,
63
,
7
,
102
,
102
,
66
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
67
,
89
,
102
,
39
,
40
,
41
,
101
,
102
,
78
,
63
,
63
,
9
,
63
,
63
,
63
,
63
,
104
,
73
,
62
,
73
,
62
,
90
,
95
,
6
,
7
,
7
,
7
,
90
,
102
,
67
,
55
,
68
,
83
,
95
,
94
,
94
,
100
,
66
,
42
,
95
,
65
,
9
,
78
,
64
,
63
,
85
,
100
,
101
,
104
,
104
,
104
,
6
,
7
,
104
,
104
,
104
,
104
,
104
,
63
,
67
,
63
,
98
,
104
,
47
,
98
,
98
,
90
,
90
,
67
,
63
,
93
,
95
,
102
,
93
,
93
,
93
,
67
,
87
,
102
,
67
,
6
7
,
67
,
77
,
77
,
77
,
77
,
77
,
78
,
66
,
85
,
86
,
87
,
9
9
,
102
,
60
,
61
,
60
,
61
,
62
,
39
,
42
,
44
,
45
,
52
,
53
,
68
,
88
,
89
,
90
,
92
,
94
,
95
,
88
,
46
,
47
,
50
,
51
,
68
,
80
,
81
,
83
,
87
,
9
0
,
92
,
98
,
102
,
78
,
78
,
57
,
58
,
79
,
102
,
78
,
88
,
64
,
86
,
102
,
78
,
90
,
95
,
78
,
102
,
102
,
6
,
8
,
9
,
100
,
102
,
104
,
102
,
63
,
66
,
11
,
90
,
80
,
98
,
102
,
68
,
81
,
97
,
98
,
98
,
90
,
90
,
66
,
85
,
95
,
66
,
66
,
75
,
104
,
74
,
104
,
66
,
102
,
63
,
6
,
7
,
9
,
54
,
63
,
66
,
9
,
10
,
55
,
56
,
87
,
102
,
63
,
66
,
57
,
79
,
8
4
,
85
,
99
,
102
,
100
,
100
,
66
,
83
,
63
,
82
,
95
,
63
,
66
,
85
,
63
,
7
,
102
,
102
,
66
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
10
,
11
,
12
,
67
,
89
,
102
,
39
,
40
,
41
,
101
,
102
,
78
,
63
,
63
,
9
,
63
,
63
,
63
,
63
,
67
,
94
,
94
,
73
,
62
,
73
,
62
,
104
,
90
,
95
,
6
,
7
,
7
,
7
,
90
,
102
,
55
,
68
,
83
,
95
,
100
,
66
,
42
,
95
,
65
,
9
,
78
,
64
,
63
,
85
,
100
,
101
,
104
,
104
,
104
,
6
,
7
,
104
,
104
,
104
,
104
,
104
,
63
,
67
,
63
,
98
,
104
,
47
,
98
,
98
,
90
,
90
,
67
,
67
,
67
,
63
,
93
,
95
,
102
,
93
,
93
,
93
,
67
,
8
7
,
67
,
67
,
78
,
63
,
95
,
82
,
82
,
90
,
63
,
78
,
66
,
67
,
104
,
104
,
89
,
80
,
63
,
63
,
78
,
63
,
63
,
90
,
86
,
65
,
90
,
40
,
95
,
98
,
66
,
91
,
90
,
...
...
@@ -2097,7 +2097,6 @@ yyreduce:
/* Line 1455 of yacc.c */
#line 308 "a.y"
{
// TODO
outcode
((
yyvsp
[(
1
)
-
(
2
)].
lval
),
Always
,
&
(
yyvsp
[(
2
)
-
(
2
)].
gen
),
NREG
,
&
nullgen
);
}
break
;
...
...
@@ -2105,7 +2104,7 @@ yyreduce:
case
44
:
/* Line 1455 of yacc.c */
#line 31
6
"a.y"
#line 31
5
"a.y"
{
outcode
((
yyvsp
[(
1
)
-
(
2
)].
lval
),
Always
,
&
nullgen
,
NREG
,
&
nullgen
);
}
...
...
@@ -2114,7 +2113,7 @@ yyreduce:
case
45
:
/* Line 1455 of yacc.c */
#line 32
1
"a.y"
#line 32
0
"a.y"
{
(
yyval
.
lval
)
=
Always
;
}
...
...
@@ -2123,7 +2122,7 @@ yyreduce:
case
46
:
/* Line 1455 of yacc.c */
#line 32
5
"a.y"
#line 32
4
"a.y"
{
(
yyval
.
lval
)
=
((
yyvsp
[(
1
)
-
(
2
)].
lval
)
&
~
C_SCOND
)
|
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2132,7 +2131,7 @@ yyreduce:
case
47
:
/* Line 1455 of yacc.c */
#line 32
9
"a.y"
#line 32
8
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
2
)].
lval
)
|
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2141,7 +2140,7 @@ yyreduce:
case
50
:
/* Line 1455 of yacc.c */
#line 33
8
"a.y"
#line 33
7
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_BRANCH
;
...
...
@@ -2152,7 +2151,7 @@ yyreduce:
case
51
:
/* Line 1455 of yacc.c */
#line 34
4
"a.y"
#line 34
3
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
if
(
pass
==
2
)
...
...
@@ -2166,7 +2165,7 @@ yyreduce:
case
52
:
/* Line 1455 of yacc.c */
#line 35
3
"a.y"
#line 35
2
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_BRANCH
;
...
...
@@ -2178,7 +2177,7 @@ yyreduce:
case
53
:
/* Line 1455 of yacc.c */
#line 36
1
"a.y"
#line 36
0
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_CONST
;
...
...
@@ -2189,7 +2188,7 @@ yyreduce:
case
54
:
/* Line 1455 of yacc.c */
#line 36
7
"a.y"
#line 36
6
"a.y"
{
(
yyval
.
gen
)
=
(
yyvsp
[(
2
)
-
(
2
)].
gen
);
(
yyval
.
gen
).
type
=
D_CONST
;
...
...
@@ -2199,7 +2198,7 @@ yyreduce:
case
55
:
/* Line 1455 of yacc.c */
#line 37
2
"a.y"
#line 37
1
"a.y"
{
(
yyval
.
gen
)
=
(
yyvsp
[(
4
)
-
(
4
)].
gen
);
(
yyval
.
gen
).
type
=
D_OCONST
;
...
...
@@ -2209,7 +2208,7 @@ yyreduce:
case
56
:
/* Line 1455 of yacc.c */
#line 37
7
"a.y"
#line 37
6
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_SCONST
;
...
...
@@ -2220,7 +2219,7 @@ yyreduce:
case
58
:
/* Line 1455 of yacc.c */
#line 38
6
"a.y"
#line 38
5
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_FCONST
;
...
...
@@ -2231,7 +2230,7 @@ yyreduce:
case
59
:
/* Line 1455 of yacc.c */
#line 39
2
"a.y"
#line 39
1
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_FCONST
;
...
...
@@ -2242,7 +2241,7 @@ yyreduce:
case
60
:
/* Line 1455 of yacc.c */
#line
400
"a.y"
#line
399
"a.y"
{
(
yyval
.
lval
)
=
1
<<
(
yyvsp
[(
1
)
-
(
1
)].
lval
);
}
...
...
@@ -2251,7 +2250,7 @@ yyreduce:
case
61
:
/* Line 1455 of yacc.c */
#line 40
4
"a.y"
#line 40
3
"a.y"
{
int
i
;
(
yyval
.
lval
)
=
0
;
...
...
@@ -2265,7 +2264,7 @@ yyreduce:
case
62
:
/* Line 1455 of yacc.c */
#line 41
3
"a.y"
#line 41
2
"a.y"
{
(
yyval
.
lval
)
=
(
1
<<
(
yyvsp
[(
1
)
-
(
3
)].
lval
))
|
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2274,7 +2273,7 @@ yyreduce:
case
66
:
/* Line 1455 of yacc.c */
#line 42
2
"a.y"
#line 42
1
"a.y"
{
(
yyval
.
gen
)
=
(
yyvsp
[(
1
)
-
(
4
)].
gen
);
(
yyval
.
gen
).
reg
=
(
yyvsp
[(
3
)
-
(
4
)].
lval
);
...
...
@@ -2284,7 +2283,7 @@ yyreduce:
case
67
:
/* Line 1455 of yacc.c */
#line 42
7
"a.y"
#line 42
6
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_PSR
;
...
...
@@ -2295,7 +2294,7 @@ yyreduce:
case
68
:
/* Line 1455 of yacc.c */
#line 43
3
"a.y"
#line 43
2
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_FPCR
;
...
...
@@ -2306,7 +2305,7 @@ yyreduce:
case
69
:
/* Line 1455 of yacc.c */
#line 43
9
"a.y"
#line 43
8
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2317,7 +2316,7 @@ yyreduce:
case
73
:
/* Line 1455 of yacc.c */
#line 4
50
"a.y"
#line 4
49
"a.y"
{
(
yyval
.
gen
)
=
(
yyvsp
[(
1
)
-
(
1
)].
gen
);
if
((
yyvsp
[(
1
)
-
(
1
)].
gen
).
name
!=
D_EXTERN
&&
(
yyvsp
[(
1
)
-
(
1
)].
gen
).
name
!=
D_STATIC
)
{
...
...
@@ -2328,7 +2327,7 @@ yyreduce:
case
74
:
/* Line 1455 of yacc.c */
#line 45
8
"a.y"
#line 45
7
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2340,7 +2339,7 @@ yyreduce:
case
76
:
/* Line 1455 of yacc.c */
#line 46
8
"a.y"
#line 46
7
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2352,7 +2351,7 @@ yyreduce:
case
78
:
/* Line 1455 of yacc.c */
#line 47
8
"a.y"
#line 47
7
"a.y"
{
(
yyval
.
gen
)
=
(
yyvsp
[(
1
)
-
(
4
)].
gen
);
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2363,7 +2362,7 @@ yyreduce:
case
83
:
/* Line 1455 of yacc.c */
#line 49
1
"a.y"
#line 49
0
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_CONST
;
...
...
@@ -2374,7 +2373,7 @@ yyreduce:
case
84
:
/* Line 1455 of yacc.c */
#line 49
9
"a.y"
#line 49
8
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_REG
;
...
...
@@ -2385,7 +2384,7 @@ yyreduce:
case
85
:
/* Line 1455 of yacc.c */
#line 50
7
"a.y"
#line 50
6
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_REGREG
;
...
...
@@ -2397,7 +2396,7 @@ yyreduce:
case
86
:
/* Line 1455 of yacc.c */
#line 51
6
"a.y"
#line 51
5
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_SHIFT
;
...
...
@@ -2408,7 +2407,7 @@ yyreduce:
case
87
:
/* Line 1455 of yacc.c */
#line 52
2
"a.y"
#line 52
1
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_SHIFT
;
...
...
@@ -2419,7 +2418,7 @@ yyreduce:
case
88
:
/* Line 1455 of yacc.c */
#line 52
8
"a.y"
#line 52
7
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_SHIFT
;
...
...
@@ -2430,7 +2429,7 @@ yyreduce:
case
89
:
/* Line 1455 of yacc.c */
#line 53
4
"a.y"
#line 53
3
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_SHIFT
;
...
...
@@ -2441,7 +2440,7 @@ yyreduce:
case
90
:
/* Line 1455 of yacc.c */
#line 54
2
"a.y"
#line 54
1
"a.y"
{
if
((
yyval
.
lval
)
<
0
||
(
yyval
.
lval
)
>=
16
)
print
(
"register value out of range
\n
"
);
...
...
@@ -2452,7 +2451,7 @@ yyreduce:
case
91
:
/* Line 1455 of yacc.c */
#line 54
8
"a.y"
#line 54
7
"a.y"
{
if
((
yyval
.
lval
)
<
0
||
(
yyval
.
lval
)
>=
32
)
print
(
"shift value out of range
\n
"
);
...
...
@@ -2463,7 +2462,7 @@ yyreduce:
case
93
:
/* Line 1455 of yacc.c */
#line 55
7
"a.y"
#line 55
6
"a.y"
{
(
yyval
.
lval
)
=
REGPC
;
}
...
...
@@ -2472,7 +2471,7 @@ yyreduce:
case
94
:
/* Line 1455 of yacc.c */
#line 56
1
"a.y"
#line 56
0
"a.y"
{
if
((
yyvsp
[(
3
)
-
(
4
)].
lval
)
<
0
||
(
yyvsp
[(
3
)
-
(
4
)].
lval
)
>=
NREG
)
print
(
"register value out of range
\n
"
);
...
...
@@ -2483,7 +2482,7 @@ yyreduce:
case
96
:
/* Line 1455 of yacc.c */
#line 5
70
"a.y"
#line 5
69
"a.y"
{
(
yyval
.
lval
)
=
REGSP
;
}
...
...
@@ -2492,7 +2491,7 @@ yyreduce:
case
98
:
/* Line 1455 of yacc.c */
#line 57
7
"a.y"
#line 57
6
"a.y"
{
if
((
yyvsp
[(
3
)
-
(
4
)].
lval
)
<
0
||
(
yyvsp
[(
3
)
-
(
4
)].
lval
)
>=
NREG
)
print
(
"register value out of range
\n
"
);
...
...
@@ -2503,7 +2502,7 @@ yyreduce:
case
101
:
/* Line 1455 of yacc.c */
#line 58
9
"a.y"
#line 58
8
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_FREG
;
...
...
@@ -2514,7 +2513,7 @@ yyreduce:
case
102
:
/* Line 1455 of yacc.c */
#line 59
5
"a.y"
#line 59
4
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_FREG
;
...
...
@@ -2525,7 +2524,7 @@ yyreduce:
case
103
:
/* Line 1455 of yacc.c */
#line 60
3
"a.y"
#line 60
2
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2538,7 +2537,7 @@ yyreduce:
case
104
:
/* Line 1455 of yacc.c */
#line 61
1
"a.y"
#line 61
0
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2551,7 +2550,7 @@ yyreduce:
case
105
:
/* Line 1455 of yacc.c */
#line 61
9
"a.y"
#line 61
8
"a.y"
{
(
yyval
.
gen
)
=
nullgen
;
(
yyval
.
gen
).
type
=
D_OREG
;
...
...
@@ -2564,7 +2563,7 @@ yyreduce:
case
106
:
/* Line 1455 of yacc.c */
#line 62
8
"a.y"
#line 62
7
"a.y"
{
(
yyval
.
lval
)
=
0
;
}
...
...
@@ -2573,7 +2572,7 @@ yyreduce:
case
107
:
/* Line 1455 of yacc.c */
#line 63
2
"a.y"
#line 63
1
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2582,7 +2581,7 @@ yyreduce:
case
108
:
/* Line 1455 of yacc.c */
#line 63
6
"a.y"
#line 63
5
"a.y"
{
(
yyval
.
lval
)
=
-
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2591,7 +2590,7 @@ yyreduce:
case
113
:
/* Line 1455 of yacc.c */
#line 64
8
"a.y"
#line 64
7
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
1
)].
sym
)
->
value
;
}
...
...
@@ -2600,7 +2599,7 @@ yyreduce:
case
114
:
/* Line 1455 of yacc.c */
#line 65
2
"a.y"
#line 65
1
"a.y"
{
(
yyval
.
lval
)
=
-
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2609,7 +2608,7 @@ yyreduce:
case
115
:
/* Line 1455 of yacc.c */
#line 65
6
"a.y"
#line 65
5
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2618,7 +2617,7 @@ yyreduce:
case
116
:
/* Line 1455 of yacc.c */
#line 6
60
"a.y"
#line 6
59
"a.y"
{
(
yyval
.
lval
)
=
~
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2627,7 +2626,7 @@ yyreduce:
case
117
:
/* Line 1455 of yacc.c */
#line 66
4
"a.y"
#line 66
3
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
2
)
-
(
3
)].
lval
);
}
...
...
@@ -2636,7 +2635,7 @@ yyreduce:
case
118
:
/* Line 1455 of yacc.c */
#line 66
9
"a.y"
#line 66
8
"a.y"
{
(
yyval
.
lval
)
=
0
;
}
...
...
@@ -2645,7 +2644,7 @@ yyreduce:
case
119
:
/* Line 1455 of yacc.c */
#line 67
3
"a.y"
#line 67
2
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
2
)
-
(
2
)].
lval
);
}
...
...
@@ -2654,7 +2653,7 @@ yyreduce:
case
121
:
/* Line 1455 of yacc.c */
#line 6
80
"a.y"
#line 6
79
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
+
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2663,7 +2662,7 @@ yyreduce:
case
122
:
/* Line 1455 of yacc.c */
#line 68
4
"a.y"
#line 68
3
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
-
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2672,7 +2671,7 @@ yyreduce:
case
123
:
/* Line 1455 of yacc.c */
#line 68
8
"a.y"
#line 68
7
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
*
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2681,7 +2680,7 @@ yyreduce:
case
124
:
/* Line 1455 of yacc.c */
#line 69
2
"a.y"
#line 69
1
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
/
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2690,7 +2689,7 @@ yyreduce:
case
125
:
/* Line 1455 of yacc.c */
#line 69
6
"a.y"
#line 69
5
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
%
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2699,7 +2698,7 @@ yyreduce:
case
126
:
/* Line 1455 of yacc.c */
#line
700
"a.y"
#line
699
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
4
)].
lval
)
<<
(
yyvsp
[(
4
)
-
(
4
)].
lval
);
}
...
...
@@ -2708,7 +2707,7 @@ yyreduce:
case
127
:
/* Line 1455 of yacc.c */
#line 70
4
"a.y"
#line 70
3
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
4
)].
lval
)
>>
(
yyvsp
[(
4
)
-
(
4
)].
lval
);
}
...
...
@@ -2717,7 +2716,7 @@ yyreduce:
case
128
:
/* Line 1455 of yacc.c */
#line 70
8
"a.y"
#line 70
7
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
&
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2726,7 +2725,7 @@ yyreduce:
case
129
:
/* Line 1455 of yacc.c */
#line 71
2
"a.y"
#line 71
1
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
^
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2735,7 +2734,7 @@ yyreduce:
case
130
:
/* Line 1455 of yacc.c */
#line 71
6
"a.y"
#line 71
5
"a.y"
{
(
yyval
.
lval
)
=
(
yyvsp
[(
1
)
-
(
3
)].
lval
)
|
(
yyvsp
[(
3
)
-
(
3
)].
lval
);
}
...
...
@@ -2744,7 +2743,7 @@ yyreduce:
/* Line 1455 of yacc.c */
#line 274
8
"y.tab.c"
#line 274
7
"y.tab.c"
default:
break
;
}
YY_SYMBOL_PRINT
(
"-> $$ ="
,
yyr1
[
yyn
],
&
yyval
,
&
yyloc
);
...
...
src/cmd/5c/peep.c
View file @
278d4a58
...
...
@@ -1067,6 +1067,7 @@ copyu(Prog *p, Adr *v, Adr *s)
case
ABLT
:
case
ABGT
:
case
ABLE
:
case
APLD
:
if
(
s
!=
A
)
{
if
(
copysub
(
&
p
->
from
,
v
,
s
,
1
))
return
1
;
...
...
src/cmd/5c/reg.c
View file @
278d4a58
...
...
@@ -190,6 +190,14 @@ regopt(Prog *p)
r
->
set
.
b
[
z
]
|=
bit
.
b
[
z
];
break
;
/*
* right side read
*/
case
APLD
:
for
(
z
=
0
;
z
<
BITS
;
z
++
)
r
->
use2
.
b
[
z
]
|=
bit
.
b
[
z
];
break
;
/*
* funny
*/
...
...
src/cmd/5c/txt.c
View file @
278d4a58
...
...
@@ -1197,7 +1197,13 @@ gpseudo(int a, Sym *s, Node *n)
void
gprefetch
(
Node
*
n
)
{
// nothing
Node
n1
;
regalloc
(
&
n1
,
n
,
Z
);
gmove
(
n
,
&
n1
);
n1
.
op
=
OINDREG
;
gins
(
APLD
,
&
n1
,
Z
);
regfree
(
&
n1
);
}
int
...
...
src/cmd/5l/asm.c
View file @
278d4a58
...
...
@@ -1429,9 +1429,14 @@ if(debug['G']) print("%ux: %s: arm %d\n", (uint32)(p->pc), p->from.sym->name, p-
break
;
o2
=
oshr
(
p
->
from
.
reg
,
0
,
REGTMP
,
p
->
scond
);
break
;
case
95
:
/* PLD
reg
*/
case
95
:
/* PLD
off(reg)
*/
o1
=
0xf5d0f000
;
o1
|=
p
->
from
.
reg
<<
16
;
if
(
p
->
from
.
offset
<
0
)
{
o1
&=
~
(
1
<<
23
);
o1
|=
(
-
p
->
from
.
offset
)
&
0xfff
;
}
else
o1
|=
p
->
from
.
offset
&
0xfff
;
}
out
[
0
]
=
o1
;
...
...
src/cmd/5l/optab.c
View file @
278d4a58
...
...
@@ -232,7 +232,7 @@ Optab optab[] =
{
ALDREXD
,
C_SOREG
,
C_NONE
,
C_REG
,
91
,
4
,
0
},
{
ASTREXD
,
C_SOREG
,
C_REG
,
C_REG
,
92
,
4
,
0
},
{
APLD
,
C_
REG
,
C_NONE
,
C_NONE
,
95
,
4
,
0
},
{
APLD
,
C_
SOREG
,
C_NONE
,
C_NONE
,
95
,
4
,
0
},
{
AXXX
,
C_NONE
,
C_NONE
,
C_NONE
,
0
,
4
,
0
},
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment