summaryrefslogtreecommitdiff
path: root/src/cmd/5a
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2013-07-18 15:38:19 -0400
committerRuss Cox <rsc@golang.org>2013-07-18 15:38:19 -0400
commite77921592506ee6fc3b2d70933010a448d609abe (patch)
tree9bb540885e9c4b6feeb01b2381b0ffd25f65fa20 /src/cmd/5a
parentd73a900230c5740dc887c01392ae711ad4a27f09 (diff)
downloadgo-e77921592506ee6fc3b2d70933010a448d609abe.tar.gz
cmd/6a, cmd/6l: make FUNCDATA work
R=ken2 CC=golang-dev https://codereview.appspot.com/11397043
Diffstat (limited to 'src/cmd/5a')
-rw-r--r--src/cmd/5a/a.y19
-rw-r--r--src/cmd/5a/lex.c1
-rw-r--r--src/cmd/5a/y.tab.c962
-rw-r--r--src/cmd/5a/y.tab.h72
4 files changed, 540 insertions, 514 deletions
diff --git a/src/cmd/5a/a.y b/src/cmd/5a/a.y
index 467f92892..19ef98b76 100644
--- a/src/cmd/5a/a.y
+++ b/src/cmd/5a/a.y
@@ -50,11 +50,11 @@
%left '*' '/' '%'
%token <lval> LTYPE1 LTYPE2 LTYPE3 LTYPE4 LTYPE5
%token <lval> LTYPE6 LTYPE7 LTYPE8 LTYPE9 LTYPEA
-%token <lval> LTYPEB LTYPEC LTYPED LTYPEE LTYPEF
+%token <lval> LTYPEB LTYPEC LTYPED LTYPEE
%token <lval> LTYPEG LTYPEH LTYPEI LTYPEJ LTYPEK
%token <lval> LTYPEL LTYPEM LTYPEN LTYPEBX LTYPEPLD
%token <lval> LCONST LSP LSB LFP LPC
-%token <lval> LTYPEX LTYPEPC LR LREG LF LFREG LC LCREG LPSR LFCR
+%token <lval> LTYPEX LTYPEPC LTYPEF LR LREG LF LFREG LC LCREG LPSR LFCR
%token <lval> LCOND LS LAT
%token <dval> LFCONST
%token <sval> LSCONST
@@ -322,11 +322,24 @@ inst:
/*
* PCDATA
*/
-| LTYPEPC imm ',' imm
+| LTYPEPC gen ',' gen
{
+ if($2.type != D_CONST || $4.type != D_CONST)
+ yyerror("arguments to PCDATA must be integer constants");
outcode($1, Always, &$2, NREG, &$4);
}
/*
+ * FUNCDATA
+ */
+| LTYPEF gen ',' gen
+ {
+ if($2.type != D_CONST)
+ yyerror("index for FUNCDATA must be integer constant");
+ if($4.type != D_EXTERN && $4.type != D_STATIC)
+ yyerror("value for FUNCDATA must be symbol reference");
+ outcode($1, Always, &$2, NREG, &$4);
+ }
+/*
* END
*/
| LTYPEE comma
diff --git a/src/cmd/5a/lex.c b/src/cmd/5a/lex.c
index 5e31b243c..3b537a967 100644
--- a/src/cmd/5a/lex.c
+++ b/src/cmd/5a/lex.c
@@ -415,6 +415,7 @@ struct
"USEFIELD", LTYPEN, AUSEFIELD,
"PCDATA", LTYPEPC, APCDATA,
+ "FUNCDATA", LTYPEF, AFUNCDATA,
0
};
diff --git a/src/cmd/5a/y.tab.c b/src/cmd/5a/y.tab.c
index da76656bf..c2895a7dc 100644
--- a/src/cmd/5a/y.tab.c
+++ b/src/cmd/5a/y.tab.c
@@ -80,24 +80,24 @@
LTYPEC = 269,
LTYPED = 270,
LTYPEE = 271,
- LTYPEF = 272,
- LTYPEG = 273,
- LTYPEH = 274,
- LTYPEI = 275,
- LTYPEJ = 276,
- LTYPEK = 277,
- LTYPEL = 278,
- LTYPEM = 279,
- LTYPEN = 280,
- LTYPEBX = 281,
- LTYPEPLD = 282,
- LCONST = 283,
- LSP = 284,
- LSB = 285,
- LFP = 286,
- LPC = 287,
- LTYPEX = 288,
- LTYPEPC = 289,
+ LTYPEG = 272,
+ LTYPEH = 273,
+ LTYPEI = 274,
+ LTYPEJ = 275,
+ LTYPEK = 276,
+ LTYPEL = 277,
+ LTYPEM = 278,
+ LTYPEN = 279,
+ LTYPEBX = 280,
+ LTYPEPLD = 281,
+ LCONST = 282,
+ LSP = 283,
+ LSB = 284,
+ LFP = 285,
+ LPC = 286,
+ LTYPEX = 287,
+ LTYPEPC = 288,
+ LTYPEF = 289,
LR = 290,
LREG = 291,
LF = 292,
@@ -131,24 +131,24 @@
#define LTYPEC 269
#define LTYPED 270
#define LTYPEE 271
-#define LTYPEF 272
-#define LTYPEG 273
-#define LTYPEH 274
-#define LTYPEI 275
-#define LTYPEJ 276
-#define LTYPEK 277
-#define LTYPEL 278
-#define LTYPEM 279
-#define LTYPEN 280
-#define LTYPEBX 281
-#define LTYPEPLD 282
-#define LCONST 283
-#define LSP 284
-#define LSB 285
-#define LFP 286
-#define LPC 287
-#define LTYPEX 288
-#define LTYPEPC 289
+#define LTYPEG 272
+#define LTYPEH 273
+#define LTYPEI 274
+#define LTYPEJ 275
+#define LTYPEK 276
+#define LTYPEL 277
+#define LTYPEM 278
+#define LTYPEN 279
+#define LTYPEBX 280
+#define LTYPEPLD 281
+#define LCONST 282
+#define LSP 283
+#define LSB 284
+#define LFP 285
+#define LPC 286
+#define LTYPEX 287
+#define LTYPEPC 288
+#define LTYPEF 289
#define LR 290
#define LREG 291
#define LF 292
@@ -435,16 +435,16 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 2
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 615
+#define YYLAST 609
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 71
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 35
/* YYNRULES -- Number of rules. */
-#define YYNRULES 132
+#define YYNRULES 133
/* YYNRULES -- Number of states. */
-#define YYNSTATES 335
+#define YYNSTATES 339
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
@@ -498,16 +498,16 @@ static const yytype_uint16 yyprhs[] =
26, 31, 33, 36, 39, 47, 54, 60, 66, 72,
77, 82, 86, 90, 95, 102, 110, 118, 126, 133,
140, 144, 149, 156, 165, 172, 177, 181, 187, 193,
- 201, 208, 221, 229, 239, 242, 247, 250, 251, 254,
- 257, 258, 261, 266, 269, 272, 275, 278, 283, 286,
- 288, 291, 295, 297, 301, 305, 307, 309, 311, 316,
- 318, 320, 322, 324, 326, 328, 330, 334, 336, 341,
- 343, 348, 350, 352, 354, 356, 359, 361, 367, 372,
- 377, 382, 387, 389, 391, 393, 395, 400, 402, 404,
- 406, 411, 413, 415, 417, 422, 427, 433, 441, 442,
- 445, 448, 450, 452, 454, 456, 458, 461, 464, 467,
- 471, 472, 475, 477, 481, 485, 489, 493, 497, 502,
- 507, 511, 515
+ 201, 208, 221, 229, 239, 242, 247, 252, 255, 256,
+ 259, 262, 263, 266, 271, 274, 277, 280, 283, 288,
+ 291, 293, 296, 300, 302, 306, 310, 312, 314, 316,
+ 321, 323, 325, 327, 329, 331, 333, 335, 339, 341,
+ 346, 348, 353, 355, 357, 359, 361, 364, 366, 372,
+ 377, 382, 387, 392, 394, 396, 398, 400, 405, 407,
+ 409, 411, 416, 418, 420, 422, 427, 432, 438, 446,
+ 447, 450, 453, 455, 457, 459, 461, 463, 466, 469,
+ 472, 476, 477, 480, 482, 486, 490, 494, 498, 502,
+ 507, 512, 516, 520
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
@@ -521,7 +521,7 @@ static const yytype_int8 yyrhs[] =
64, 96, 64, -1, 13, 78, 89, 64, 91, -1,
14, 78, 89, 64, 91, -1, 15, 78, 84, 64,
84, -1, 16, 78, 79, 80, -1, 16, 78, 79,
- 85, -1, 36, 79, 86, -1, 17, 79, 80, -1,
+ 85, -1, 35, 79, 86, -1, 17, 79, 80, -1,
18, 78, 79, 84, -1, 19, 78, 89, 64, 96,
79, -1, 20, 78, 87, 64, 65, 83, 66, -1,
20, 78, 65, 83, 66, 64, 87, -1, 21, 78,
@@ -530,41 +530,42 @@ static const yytype_int8 yyrhs[] =
22, 78, 79, -1, 23, 100, 64, 90, -1, 23,
100, 64, 103, 64, 90, -1, 23, 100, 64, 103,
64, 90, 9, 103, -1, 24, 100, 11, 103, 64,
- 81, -1, 25, 78, 91, 79, -1, 29, 79, 81,
- -1, 30, 78, 99, 64, 99, -1, 32, 78, 98,
- 64, 99, -1, 32, 78, 98, 64, 48, 64, 99,
- -1, 33, 78, 99, 64, 99, 79, -1, 31, 78,
+ 81, -1, 25, 78, 91, 79, -1, 28, 79, 81,
+ -1, 29, 78, 99, 64, 99, -1, 31, 78, 98,
+ 64, 99, -1, 31, 78, 98, 64, 48, 64, 99,
+ -1, 32, 78, 99, 64, 99, 79, -1, 30, 78,
103, 64, 105, 64, 96, 64, 97, 64, 97, 104,
- -1, 34, 78, 91, 64, 91, 64, 92, -1, 35,
- 78, 91, 64, 91, 64, 91, 64, 96, -1, 37,
- 88, -1, 44, 90, 64, 90, -1, 26, 79, -1,
- -1, 78, 53, -1, 78, 54, -1, -1, 64, 79,
- -1, 103, 67, 42, 68, -1, 58, 101, -1, 59,
- 101, -1, 69, 103, -1, 69, 88, -1, 69, 10,
- 69, 88, -1, 69, 57, -1, 82, -1, 69, 56,
- -1, 69, 9, 56, -1, 96, -1, 96, 9, 96,
- -1, 96, 79, 83, -1, 91, -1, 81, -1, 93,
- -1, 93, 67, 96, 68, -1, 51, -1, 52, -1,
- 103, -1, 88, -1, 99, -1, 86, -1, 100, -1,
- 67, 96, 68, -1, 86, -1, 103, 67, 95, 68,
- -1, 100, -1, 100, 67, 95, 68, -1, 87, -1,
- 91, -1, 90, -1, 93, -1, 69, 103, -1, 96,
- -1, 67, 96, 64, 96, 68, -1, 96, 6, 6,
- 94, -1, 96, 7, 7, 94, -1, 96, 9, 7,
- 94, -1, 96, 55, 7, 94, -1, 96, -1, 103,
- -1, 46, -1, 42, -1, 45, 67, 105, 68, -1,
- 95, -1, 39, -1, 50, -1, 49, 67, 105, 68,
- -1, 99, -1, 82, -1, 48, -1, 47, 67, 103,
- 68, -1, 103, 67, 102, 68, -1, 58, 101, 67,
- 102, 68, -1, 58, 6, 7, 101, 67, 40, 68,
- -1, -1, 8, 103, -1, 9, 103, -1, 40, -1,
- 39, -1, 41, -1, 38, -1, 60, -1, 9, 103,
- -1, 8, 103, -1, 70, 103, -1, 67, 105, 68,
- -1, -1, 64, 105, -1, 103, -1, 105, 8, 105,
- -1, 105, 9, 105, -1, 105, 10, 105, -1, 105,
- 11, 105, -1, 105, 12, 105, -1, 105, 6, 6,
- 105, -1, 105, 7, 7, 105, -1, 105, 5, 105,
- -1, 105, 4, 105, -1, 105, 3, 105, -1
+ -1, 33, 78, 91, 64, 91, 64, 92, -1, 34,
+ 78, 91, 64, 91, 64, 91, 64, 96, -1, 36,
+ 88, -1, 43, 84, 64, 84, -1, 44, 84, 64,
+ 84, -1, 26, 79, -1, -1, 78, 53, -1, 78,
+ 54, -1, -1, 64, 79, -1, 103, 67, 41, 68,
+ -1, 58, 101, -1, 59, 101, -1, 69, 103, -1,
+ 69, 88, -1, 69, 10, 69, 88, -1, 69, 57,
+ -1, 82, -1, 69, 56, -1, 69, 9, 56, -1,
+ 96, -1, 96, 9, 96, -1, 96, 79, 83, -1,
+ 91, -1, 81, -1, 93, -1, 93, 67, 96, 68,
+ -1, 51, -1, 52, -1, 103, -1, 88, -1, 99,
+ -1, 86, -1, 100, -1, 67, 96, 68, -1, 86,
+ -1, 103, 67, 95, 68, -1, 100, -1, 100, 67,
+ 95, 68, -1, 87, -1, 91, -1, 90, -1, 93,
+ -1, 69, 103, -1, 96, -1, 67, 96, 64, 96,
+ 68, -1, 96, 6, 6, 94, -1, 96, 7, 7,
+ 94, -1, 96, 9, 7, 94, -1, 96, 55, 7,
+ 94, -1, 96, -1, 103, -1, 46, -1, 41, -1,
+ 45, 67, 105, 68, -1, 95, -1, 38, -1, 50,
+ -1, 49, 67, 105, 68, -1, 99, -1, 82, -1,
+ 48, -1, 47, 67, 103, 68, -1, 103, 67, 102,
+ 68, -1, 58, 101, 67, 102, 68, -1, 58, 6,
+ 7, 101, 67, 39, 68, -1, -1, 8, 103, -1,
+ 9, 103, -1, 39, -1, 38, -1, 40, -1, 37,
+ -1, 60, -1, 9, 103, -1, 8, 103, -1, 70,
+ 103, -1, 67, 105, 68, -1, -1, 64, 105, -1,
+ 103, -1, 105, 8, 105, -1, 105, 9, 105, -1,
+ 105, 10, 105, -1, 105, 11, 105, -1, 105, 12,
+ 105, -1, 105, 6, 6, 105, -1, 105, 7, 7,
+ 105, -1, 105, 5, 105, -1, 105, 4, 105, -1,
+ 105, 3, 105, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
@@ -574,16 +575,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, 226, 239, 246, 253, 260, 264, 268,
- 272, 279, 301, 309, 318, 325, 332, 338, 341, 345,
- 350, 351, 354, 360, 369, 377, 383, 388, 393, 399,
- 402, 408, 416, 420, 429, 435, 436, 437, 438, 443,
- 449, 455, 461, 462, 465, 466, 474, 483, 484, 493,
- 494, 500, 503, 504, 505, 507, 515, 523, 532, 538,
- 544, 550, 558, 564, 572, 573, 577, 585, 586, 592,
- 593, 601, 602, 605, 611, 619, 627, 635, 645, 648,
- 652, 658, 659, 660, 663, 664, 668, 672, 676, 680,
- 686, 689, 695, 696, 700, 704, 708, 712, 716, 720,
- 724, 728, 732
+ 272, 279, 301, 309, 318, 325, 334, 345, 351, 354,
+ 358, 363, 364, 367, 373, 382, 390, 396, 401, 406,
+ 412, 415, 421, 429, 433, 442, 448, 449, 450, 451,
+ 456, 462, 468, 474, 475, 478, 479, 487, 496, 497,
+ 506, 507, 513, 516, 517, 518, 520, 528, 536, 545,
+ 551, 557, 563, 571, 577, 585, 586, 590, 598, 599,
+ 605, 606, 614, 615, 618, 624, 632, 640, 648, 658,
+ 661, 665, 671, 672, 673, 676, 677, 681, 685, 689,
+ 693, 699, 702, 708, 709, 713, 717, 721, 725, 729,
+ 733, 737, 741, 745
};
#endif
@@ -595,9 +596,9 @@ static const char *const yytname[] =
"$end", "error", "$undefined", "'|'", "'^'", "'&'", "'<'", "'>'", "'+'",
"'-'", "'*'", "'/'", "'%'", "LTYPE1", "LTYPE2", "LTYPE3", "LTYPE4",
"LTYPE5", "LTYPE6", "LTYPE7", "LTYPE8", "LTYPE9", "LTYPEA", "LTYPEB",
- "LTYPEC", "LTYPED", "LTYPEE", "LTYPEF", "LTYPEG", "LTYPEH", "LTYPEI",
- "LTYPEJ", "LTYPEK", "LTYPEL", "LTYPEM", "LTYPEN", "LTYPEBX", "LTYPEPLD",
- "LCONST", "LSP", "LSB", "LFP", "LPC", "LTYPEX", "LTYPEPC", "LR", "LREG",
+ "LTYPEC", "LTYPED", "LTYPEE", "LTYPEG", "LTYPEH", "LTYPEI", "LTYPEJ",
+ "LTYPEK", "LTYPEL", "LTYPEM", "LTYPEN", "LTYPEBX", "LTYPEPLD", "LCONST",
+ "LSP", "LSB", "LFP", "LPC", "LTYPEX", "LTYPEPC", "LTYPEF", "LR", "LREG",
"LF", "LFREG", "LC", "LCREG", "LPSR", "LFCR", "LCOND", "LS", "LAT",
"LFCONST", "LSCONST", "LNAME", "LLAB", "LVAR", "':'", "'='", "';'",
"','", "'['", "']'", "'('", "')'", "'$'", "'~'", "$accept", "prog", "@1",
@@ -631,16 +632,16 @@ static const yytype_uint8 yyr1[] =
74, 74, 74, 74, 77, 77, 77, 77, 77, 77,
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 77, 78, 78, 78,
- 79, 79, 80, 80, 80, 81, 81, 81, 81, 81,
- 82, 82, 83, 83, 83, 84, 84, 84, 84, 84,
- 84, 84, 84, 84, 85, 85, 86, 87, 87, 88,
- 88, 88, 89, 89, 89, 90, 91, 92, 93, 93,
- 93, 93, 94, 94, 95, 95, 95, 96, 96, 97,
- 97, 98, 98, 99, 99, 100, 100, 100, 101, 101,
- 101, 102, 102, 102, 103, 103, 103, 103, 103, 103,
- 104, 104, 105, 105, 105, 105, 105, 105, 105, 105,
- 105, 105, 105
+ 77, 77, 77, 77, 77, 77, 77, 77, 78, 78,
+ 78, 79, 79, 80, 80, 80, 81, 81, 81, 81,
+ 81, 82, 82, 83, 83, 83, 84, 84, 84, 84,
+ 84, 84, 84, 84, 84, 85, 85, 86, 87, 87,
+ 88, 88, 88, 89, 89, 89, 90, 91, 92, 93,
+ 93, 93, 93, 94, 94, 95, 95, 95, 96, 96,
+ 97, 97, 98, 98, 99, 99, 100, 100, 100, 101,
+ 101, 101, 102, 102, 102, 103, 103, 103, 103, 103,
+ 103, 104, 104, 105, 105, 105, 105, 105, 105, 105,
+ 105, 105, 105, 105
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
@@ -650,16 +651,16 @@ static const yytype_uint8 yyr2[] =
4, 1, 2, 2, 7, 6, 5, 5, 5, 4,
4, 3, 3, 4, 6, 7, 7, 7, 6, 6,
3, 4, 6, 8, 6, 4, 3, 5, 5, 7,
- 6, 12, 7, 9, 2, 4, 2, 0, 2, 2,
- 0, 2, 4, 2, 2, 2, 2, 4, 2, 1,
- 2, 3, 1, 3, 3, 1, 1, 1, 4, 1,
- 1, 1, 1, 1, 1, 1, 3, 1, 4, 1,
- 4, 1, 1, 1, 1, 2, 1, 5, 4, 4,
- 4, 4, 1, 1, 1, 1, 4, 1, 1, 1,
- 4, 1, 1, 1, 4, 4, 5, 7, 0, 2,
- 2, 1, 1, 1, 1, 1, 2, 2, 2, 3,
- 0, 2, 1, 3, 3, 3, 3, 3, 4, 4,
- 3, 3, 3
+ 6, 12, 7, 9, 2, 4, 4, 2, 0, 2,
+ 2, 0, 2, 4, 2, 2, 2, 2, 4, 2,
+ 1, 2, 3, 1, 3, 3, 1, 1, 1, 4,
+ 1, 1, 1, 1, 1, 1, 1, 3, 1, 4,
+ 1, 4, 1, 1, 1, 1, 2, 1, 5, 4,
+ 4, 4, 4, 1, 1, 1, 1, 4, 1, 1,
+ 1, 4, 1, 1, 1, 4, 4, 5, 7, 0,
+ 2, 2, 1, 1, 1, 1, 1, 2, 2, 2,
+ 3, 0, 2, 1, 3, 3, 3, 3, 3, 4,
+ 4, 3, 3, 3
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -667,236 +668,234 @@ static const yytype_uint8 yyr2[] =
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
- 2, 3, 1, 0, 0, 47, 47, 47, 47, 50,
- 47, 47, 47, 47, 47, 0, 0, 47, 50, 50,
- 47, 47, 47, 47, 47, 47, 50, 0, 0, 0,
- 0, 0, 11, 4, 0, 13, 0, 0, 0, 50,
- 50, 0, 50, 0, 0, 50, 50, 0, 0, 114,
- 108, 115, 0, 0, 0, 0, 0, 0, 46, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 77, 81,
- 44, 79, 0, 0, 0, 7, 0, 5, 0, 12,
- 98, 95, 0, 94, 48, 49, 0, 83, 82, 84,
- 97, 86, 0, 0, 103, 69, 70, 0, 66, 59,
- 0, 72, 65, 67, 73, 71, 0, 51, 108, 108,
- 22, 0, 0, 0, 0, 0, 0, 0, 0, 86,
- 30, 117, 116, 0, 0, 0, 0, 122, 0, 118,
- 0, 0, 0, 50, 36, 0, 0, 0, 102, 0,
- 101, 0, 0, 0, 0, 21, 0, 0, 0, 85,
+ 2, 3, 1, 0, 0, 48, 48, 48, 48, 51,
+ 48, 48, 48, 48, 48, 0, 0, 48, 51, 51,
+ 48, 48, 48, 48, 48, 48, 51, 0, 0, 0,
+ 0, 0, 0, 11, 4, 0, 13, 0, 0, 0,
+ 51, 51, 0, 51, 0, 0, 51, 51, 0, 0,
+ 115, 109, 116, 0, 0, 0, 0, 0, 0, 47,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
+ 82, 44, 80, 0, 99, 96, 0, 95, 0, 104,
+ 70, 71, 0, 67, 60, 0, 73, 66, 68, 98,
+ 87, 74, 72, 0, 7, 0, 5, 0, 12, 49,
+ 50, 0, 0, 84, 83, 85, 0, 0, 0, 52,
+ 109, 109, 22, 0, 0, 0, 0, 0, 0, 0,
+ 0, 87, 30, 118, 117, 0, 0, 0, 0, 123,
+ 0, 119, 0, 0, 0, 51, 36, 0, 0, 0,
+ 103, 0, 102, 0, 0, 0, 0, 21, 0, 0,
+ 0, 0, 0, 0, 0, 61, 59, 57, 56, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 60, 58, 56, 55, 0,
- 0, 108, 19, 20, 74, 75, 0, 53, 54, 0,
- 23, 0, 0, 50, 0, 0, 0, 0, 108, 109,
- 110, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 119, 31, 0, 112, 111, 113, 0, 0,
- 35, 0, 0, 0, 0, 0, 0, 0, 76, 0,
- 0, 45, 8, 9, 6, 10, 0, 16, 86, 0,
- 0, 0, 0, 17, 0, 61, 0, 18, 0, 53,
- 0, 0, 50, 0, 0, 0, 0, 0, 50, 0,
- 0, 132, 131, 130, 0, 0, 123, 124, 125, 126,
- 127, 0, 105, 0, 37, 0, 103, 38, 50, 0,
- 0, 80, 78, 96, 15, 88, 92, 93, 89, 90,
- 91, 104, 57, 68, 52, 24, 0, 63, 64, 0,
- 29, 50, 28, 0, 106, 128, 129, 32, 34, 0,
- 0, 40, 0, 0, 14, 26, 25, 27, 0, 0,
- 0, 39, 0, 42, 0, 107, 33, 0, 0, 0,
- 0, 99, 0, 0, 43, 0, 0, 0, 0, 120,
- 87, 100, 0, 41, 121
+ 86, 0, 0, 0, 109, 19, 20, 75, 76, 0,
+ 54, 55, 0, 23, 0, 0, 51, 0, 0, 0,
+ 0, 109, 110, 111, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 120, 31, 0, 113, 112,
+ 114, 0, 0, 35, 0, 0, 0, 0, 0, 0,
+ 0, 77, 0, 0, 0, 0, 62, 0, 45, 0,
+ 0, 0, 0, 0, 46, 8, 9, 6, 10, 16,
+ 87, 17, 18, 54, 0, 0, 51, 0, 0, 0,
+ 0, 0, 51, 0, 0, 133, 132, 131, 0, 0,
+ 124, 125, 126, 127, 128, 0, 106, 0, 37, 0,
+ 104, 38, 51, 0, 0, 81, 79, 97, 105, 58,
+ 69, 89, 93, 94, 90, 91, 92, 15, 53, 24,
+ 0, 64, 65, 0, 29, 51, 28, 0, 107, 129,
+ 130, 32, 34, 0, 0, 40, 0, 0, 14, 26,
+ 25, 27, 0, 0, 0, 39, 0, 42, 0, 108,
+ 33, 0, 0, 0, 0, 100, 0, 0, 43, 0,
+ 0, 0, 0, 121, 88, 101, 0, 41, 122
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- -1, 1, 3, 33, 153, 151, 34, 36, 107, 110,
- 98, 99, 182, 100, 173, 68, 69, 101, 86, 87,
- 88, 313, 89, 275, 90, 119, 322, 139, 104, 71,
- 126, 208, 127, 333, 128
+ -1, 1, 3, 34, 168, 166, 35, 37, 109, 112,
+ 83, 84, 185, 85, 176, 69, 70, 86, 102, 103,
+ 87, 317, 88, 281, 89, 121, 326, 141, 91, 72,
+ 128, 211, 129, 337, 130
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -127
+#define YYPACT_NINF -128
static const yytype_int16 yypact[] =
{
- -127, 39, -127, 320, -20, -127, -127, -127, -127, -13,
- -127, -127, -127, -127, -127, 260, 260, -127, -13, -13,
- -127, -127, -127, -127, -127, -127, -13, 421, -6, 28,
- -12, 9, -127, -127, -9, -127, 321, 321, 350, 3,
- -13, 122, 3, 321, 397, 323, 3, 444, 444, -127,
- 385, -127, 444, 444, 13, 7, 74, 467, -127, 23,
- 91, 417, 248, 91, 467, 467, 29, 194, -127, -127,
- -127, 41, 44, 444, 54, -127, 444, -127, 444, -127,
- -127, -127, 79, -127, -127, -127, 77, -127, -127, -127,
- -127, 69, 85, 86, -127, -127, -127, 56, -127, -127,
- 92, -127, -127, 109, -127, 44, 200, -127, 161, 161,
- -127, 112, 376, 142, 42, 160, 174, 29, 183, -127,
- -127, -127, -127, 239, 444, 444, 188, -127, 95, -127,
- 182, 20, 444, -13, -127, 184, 186, -1, -127, 192,
- -127, 193, 201, 202, 42, -127, 204, 119, 159, -127,
- -6, 320, 535, 320, 545, 444, 42, 275, 266, 290,
- 296, 42, 444, 430, 236, -127, -127, -127, 44, 376,
- 42, 385, -127, -127, -127, -127, 252, -127, -127, 284,
- -127, 42, 262, 6, 264, 119, 268, 29, 161, -127,
- -127, 20, 444, 444, 444, 325, 340, 444, 444, 444,
- 444, 444, -127, -127, 297, -127, -127, -127, 302, 307,
- -127, 147, 444, 317, 175, 147, 42, 42, -127, 313,
- 314, -127, -127, -127, -127, -127, 280, -127, 322, 194,
- 194, 194, 194, -127, 331, -127, 421, -127, 332, 188,
- 283, 339, -13, 345, 42, 42, 42, 42, 347, 346,
- 344, 595, 585, 603, 444, 444, 123, 123, -127, -127,
- -127, -6, -127, 23, -127, 525, 352, -127, -13, 367,
- 368, -127, -127, -127, 42, -127, -127, -127, -127, -127,
- -127, -127, -127, -127, -127, -127, 457, -127, -127, 371,
- -127, 113, -127, 393, -127, 267, 267, 431, -127, 42,
- 147, -127, 374, 42, -127, -127, -127, -127, 379, 444,
- 378, -127, 42, -127, 380, -127, -127, 181, 384, 42,
- 382, -127, 390, 42, -127, 444, 181, 388, 304, 394,
- -127, -127, 444, -127, 575
+ -128, 4, -128, 315, -35, -128, -128, -128, -128, -10,
+ -128, -128, -128, -128, -128, 44, 44, -128, -10, -10,
+ -128, -128, -128, -128, -128, -128, -10, 416, 371, 371,
+ -49, 9, 32, -128, -128, 38, -128, 487, 487, 344,
+ 69, -10, 391, 69, 487, 209, 489, 69, 317, 317,
+ -128, 49, -128, 317, 317, 42, 48, 106, 67, -128,
+ 61, 191, 25, 93, 191, 67, 67, 68, 170, -128,
+ -128, -128, 72, 84, -128, -128, 86, -128, 109, -128,
+ -128, -128, 233, -128, -128, 80, -128, -128, 115, -128,
+ 426, -128, 84, 120, -128, 317, -128, 317, -128, -128,
+ -128, 317, 137, -128, -128, -128, 148, 155, 397, -128,
+ 74, 74, -128, 164, 371, 204, 240, 207, 206, 68,
+ 223, -128, -128, -128, -128, 270, 317, 317, 227, -128,
+ 183, -128, 90, 160, 317, -10, -128, 234, 237, 16,
+ -128, 254, -128, 255, 256, 257, 240, -128, 212, 168,
+ 548, 317, 317, 428, 258, -128, -128, -128, 84, 371,
+ 240, 318, 316, 335, 348, 371, 315, 502, 315, 512,
+ -128, 240, 240, 371, 49, -128, -128, -128, -128, 289,
+ -128, -128, 330, -128, 240, 291, 11, 307, 168, 312,
+ 68, 74, -128, -128, 160, 317, 317, 317, 377, 379,
+ 317, 317, 317, 317, 317, -128, -128, 324, -128, -128,
+ -128, 325, 337, -128, 77, 317, 338, 126, 77, 240,
+ 240, -128, 339, 342, 249, 347, -128, 416, -128, 352,
+ 170, 170, 170, 170, -128, -128, -128, -128, -128, -128,
+ 362, -128, -128, 227, -2, 359, -10, 366, 240, 240,
+ 240, 240, 375, 336, 384, 562, 590, 597, 317, 317,
+ 213, 213, -128, -128, -128, 385, -128, 61, -128, 357,
+ 395, -128, -10, 396, 398, -128, -128, -128, -128, -128,
+ -128, -128, -128, -128, -128, -128, -128, 240, -128, -128,
+ 434, -128, -128, 400, -128, 432, -128, 424, -128, 436,
+ 436, 459, -128, 240, 77, -128, 402, 240, -128, -128,
+ -128, -128, 404, 317, 411, -128, 240, -128, 415, -128,
+ -128, 216, 418, 240, 413, -128, 421, 240, -128, 317,
+ 216, 419, 302, 425, -128, -128, 317, -128, 573
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -127, -127, -127, -126, -127, -127, -127, 552, -5, 354,
- -56, 399, -11, -101, -127, -44, -42, -17, 10, -8,
- -29, -127, -33, -47, -28, -19, 137, -127, -18, 15,
- -102, 278, -15, -127, -26
+ -128, -128, -128, -77, -128, -128, -128, 538, 50, 382,
+ -57, 429, 33, -7, -128, -48, -43, -21, 36, -127,
+ -23, -128, 29, 17, -101, -28, 161, -128, -37, -8,
+ -65, 299, 2, -128, -32
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule which
number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
-#define YYTABLE_NINF -63
+#define YYTABLE_NINF -64
static const yytype_int16 yytable[] =
{
- 55, 55, 115, 134, 41, 103, 177, 178, 213, 102,
- 70, 180, 72, 58, 59, 244, 118, 91, 91, 91,
- 74, 66, 145, 105, 91, 222, 111, 224, 133, 116,
- 54, 56, 121, 122, 106, 142, 143, 112, 129, 2,
- 117, 120, 135, 35, 140, 141, 136, 92, 146, 77,
- 152, 40, 154, 113, 79, 165, 84, 85, 149, 205,
- 206, 207, 174, 73, 47, 163, 164, 40, 237, 239,
- 40, 78, -62, 186, 131, 157, 158, 130, 159, 103,
- 167, 80, 168, 102, 81, 132, 249, 82, 83, 75,
- 76, 176, 97, 91, 49, 183, 144, 105, 192, 193,
- 194, 195, 196, 197, 198, 199, 200, 201, 147, 189,
- 190, 148, 165, 166, 50, 204, 51, 209, 150, 219,
- 220, 175, 203, 67, 160, 146, 53, 227, 210, 226,
- 47, 48, 233, 199, 200, 201, 103, 228, 93, 94,
- 102, 156, 221, 248, 84, 85, 155, 234, 122, 161,
- 91, 238, 80, 162, 105, 81, 169, 220, 82, 83,
- 49, 81, 242, 202, 82, 83, 251, 252, 253, 124,
- 125, 256, 257, 258, 259, 260, 170, 40, 245, 179,
- 108, 109, 51, 278, 279, 280, 265, 269, 270, 52,
- 47, 48, 53, 264, 93, 94, 267, 268, 205, 206,
- 207, 81, 47, 48, 82, 83, 181, 298, 47, 48,
- 276, 276, 276, 276, 277, 277, 277, 277, 290, 282,
- 49, 72, 93, 266, 184, 287, 183, 183, 295, 296,
- 320, 321, 49, 80, 288, 289, 81, 285, 49, 82,
- 83, 185, 51, 292, 305, 304, 188, 187, 211, 52,
- 212, 73, 53, 297, 51, 191, 214, 215, 171, 109,
- 51, 52, 307, 301, 53, 216, 217, 67, 47, 48,
- 53, 116, 218, 230, 314, 197, 198, 199, 200, 201,
- 310, 229, 311, 192, 193, 194, 195, 196, 197, 198,
- 199, 200, 201, 318, 316, 93, 94, 231, 49, 328,
- 324, 84, 85, 232, 327, 236, 334, 192, 193, 194,
- 195, 196, 197, 198, 199, 200, 201, 137, 50, 240,
- 51, 4, 205, 206, 207, 241, 241, 52, 243, 246,
- 53, 254, 247, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, 17, 18, 255, 273, 19,
- 20, 21, 22, 23, 24, 25, 26, 27, 47, 48,
- 80, 261, 80, 81, 28, 81, 82, 83, 82, 83,
- 262, 263, 331, 235, 84, 85, 84, 85, 29, 30,
- 31, 271, 272, 32, 47, 48, 274, 40, 49, 80,
- 73, 123, 81, 124, 125, 82, 83, 93, 94, 281,
- 283, 95, 96, 84, 85, 47, 48, 284, 50, 286,
- 51, 291, 294, 293, 49, 80, 300, 67, 81, 97,
- 53, 82, 83, 93, 94, 47, 48, 95, 96, 47,
- 48, 302, 303, 308, 50, 49, 51, 306, 47, 48,
- 309, 312, 317, 67, 319, 97, 53, 315, 323, 325,
- 84, 85, 47, 48, 326, 49, 330, 51, 332, 49,
- 172, 138, 114, 329, 67, 47, 48, 53, 49, 250,
- 84, 85, 0, 0, 0, 0, 0, 51, 0, 50,
- 0, 51, 49, 0, 52, 0, 235, 53, 67, 0,
- 51, 53, 0, 0, 0, 49, 0, 52, 0, 0,
- 53, 0, 0, 0, 51, 0, 80, 0, 0, 81,
- 0, 52, 82, 83, 53, 0, 0, 51, 0, 0,
- 84, 85, 0, 0, 67, 0, 0, 53, 192, 193,
- 194, 195, 196, 197, 198, 199, 200, 201, 192, 193,
- 194, 195, 196, 197, 198, 199, 200, 201, 192, 193,
- 194, 195, 196, 197, 198, 199, 200, 201, 37, 38,
- 39, 0, 42, 43, 44, 45, 46, 0, 0, 57,
- 0, 0, 60, 61, 62, 63, 64, 65, 192, 193,
- 194, 195, 196, 197, 198, 199, 200, 201, 0, 299,
- 194, 195, 196, 197, 198, 199, 200, 201, 223, 193,
- 194, 195, 196, 197, 198, 199, 200, 201, 225, 195,
- 196, 197, 198, 199, 200, 201
+ 90, 90, 117, 136, 2, 206, 71, 55, 57, 90,
+ 90, 90, 94, 95, 104, 104, 90, 56, 56, 147,
+ 248, 104, 93, 120, 137, 216, 142, 143, 36, 73,
+ 92, 92, 107, 48, 49, 135, 208, 209, 210, 245,
+ 148, 92, 144, 145, 113, 180, 181, 118, 222, 223,
+ 123, 124, 48, 49, 41, 125, 131, 126, 127, 42,
+ 177, 157, 50, 167, 138, 169, 105, 105, 59, 60,
+ 96, 189, 155, 105, 106, 41, 67, -63, 99, 100,
+ 115, 50, 126, 127, 158, 52, 90, 223, 186, 235,
+ 108, 237, 53, 114, 97, 54, 119, 122, 48, 49,
+ 178, 98, 51, 170, 52, 74, 132, 183, 75, 243,
+ 179, 53, 76, 77, 54, 133, 92, 134, 148, 224,
+ 99, 100, 99, 100, 78, 79, 253, 50, 192, 193,
+ 82, 90, 229, 41, 207, 146, 212, 90, 301, 149,
+ 78, 79, 252, 240, 159, 90, 99, 100, 239, 241,
+ 52, 150, 228, 151, 225, 124, 246, 53, 234, 101,
+ 54, 92, 139, 255, 256, 257, 242, 92, 260, 261,
+ 262, 263, 264, 78, 270, 92, 152, 268, 48, 49,
+ 271, 272, 160, 269, 165, 213, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 273, 274, 208, 209,
+ 210, 171, 282, 282, 282, 282, 279, 50, 74, 75,
+ 302, 75, 172, 76, 77, 76, 77, 48, 49, 173,
+ 291, 186, 186, 202, 203, 204, 299, 300, 294, 73,
+ 52, 182, 283, 283, 283, 283, 249, 53, 78, 79,
+ 54, 48, 153, 154, 99, 100, 50, 309, 284, 285,
+ 286, 205, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 99, 100, 308, 324, 325, 315, 184, 52,
+ 50, 187, 311, 188, 116, 314, 68, 191, 74, 54,
+ 221, 75, 292, 293, 318, 76, 77, 190, 322, 155,
+ 156, 51, 118, 52, 194, 328, 289, 332, 214, 331,
+ 68, 215, 296, 54, 338, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 320, 4, 277, 217, 218,
+ 219, 220, 305, 231, 230, 48, 49, 227, 5, 6,
+ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
+ 17, 18, 232, 19, 20, 21, 22, 23, 24, 25,
+ 26, 27, 48, 49, 50, 233, 244, 247, 28, 29,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 335, 245, 250, 30, 31, 32, 251, 52, 33, 48,
+ 49, 50, 74, 258, 53, 75, 259, 54, 265, 76,
+ 77, 78, 79, 266, 226, 80, 81, 99, 100, 48,
+ 49, 267, 51, 297, 52, 48, 49, 275, 50, 74,
+ 276, 68, 75, 82, 54, 278, 76, 77, 78, 79,
+ 280, 303, 80, 81, 48, 49, 287, 288, 50, 51,
+ 290, 52, 161, 162, 50, 163, 48, 49, 68, 295,
+ 82, 54, 48, 49, 200, 201, 202, 203, 204, 110,
+ 111, 52, 298, 50, 101, 174, 111, 52, 53, 304,
+ 306, 54, 307, 312, 68, 50, 310, 54, 313, 316,
+ 74, 50, 319, 75, 51, 321, 52, 76, 77, 323,
+ 329, 164, 327, 68, 226, 330, 54, 334, 52, 336,
+ 175, 333, 140, 254, 52, 53, 41, 0, 54, 0,
+ 0, 68, 0, 0, 54, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 74, 0, 74, 75, 0,
+ 75, 0, 76, 77, 76, 77, 0, 0, 0, 0,
+ 99, 100, 99, 100, 38, 39, 40, 0, 43, 44,
+ 45, 46, 47, 41, 0, 58, 101, 0, 61, 62,
+ 63, 64, 65, 66, 0, 236, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 238, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 208, 209, 210, 75,
+ 0, 0, 0, 76, 77, 197, 198, 199, 200, 201,
+ 202, 203, 204, 198, 199, 200, 201, 202, 203, 204
};
static const yytype_int16 yycheck[] =
{
- 15, 16, 44, 59, 9, 38, 108, 109, 9, 38,
- 27, 112, 27, 18, 19, 9, 45, 36, 37, 38,
- 28, 26, 66, 38, 43, 151, 41, 153, 57, 44,
- 15, 16, 47, 48, 39, 64, 65, 42, 53, 0,
- 45, 46, 60, 63, 62, 63, 61, 37, 67, 61,
- 76, 64, 78, 43, 63, 56, 53, 54, 73, 39,
- 40, 41, 106, 69, 8, 9, 10, 64, 169, 171,
- 64, 62, 66, 117, 67, 6, 7, 64, 9, 112,
- 97, 39, 97, 112, 42, 11, 188, 45, 46, 61,
- 62, 106, 69, 112, 38, 114, 67, 112, 3, 4,
- 5, 6, 7, 8, 9, 10, 11, 12, 67, 124,
- 125, 67, 56, 57, 58, 130, 60, 132, 64, 147,
- 148, 106, 130, 67, 55, 144, 70, 156, 133, 155,
- 8, 9, 161, 10, 11, 12, 169, 156, 47, 48,
- 169, 64, 150, 187, 53, 54, 67, 162, 163, 64,
- 169, 170, 39, 67, 169, 42, 64, 185, 45, 46,
- 38, 42, 181, 68, 45, 46, 192, 193, 194, 8,
- 9, 197, 198, 199, 200, 201, 67, 64, 183, 67,
- 58, 59, 60, 230, 231, 232, 212, 216, 217, 67,
- 8, 9, 70, 211, 47, 48, 214, 215, 39, 40,
- 41, 42, 8, 9, 45, 46, 64, 263, 8, 9,
- 229, 230, 231, 232, 229, 230, 231, 232, 247, 236,
- 38, 236, 47, 48, 64, 244, 245, 246, 254, 255,
- 49, 50, 38, 39, 245, 246, 42, 242, 38, 45,
- 46, 67, 60, 248, 286, 274, 7, 64, 64, 67,
- 64, 69, 70, 261, 60, 67, 64, 64, 58, 59,
- 60, 67, 291, 268, 70, 64, 64, 67, 8, 9,
- 70, 286, 68, 7, 303, 8, 9, 10, 11, 12,
- 299, 6, 300, 3, 4, 5, 6, 7, 8, 9,
- 10, 11, 12, 312, 309, 47, 48, 7, 38, 325,
- 319, 53, 54, 7, 323, 69, 332, 3, 4, 5,
- 6, 7, 8, 9, 10, 11, 12, 69, 58, 67,
- 60, 1, 39, 40, 41, 42, 42, 67, 66, 65,
- 70, 6, 64, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 22, 23, 24, 25, 26, 7, 68, 29,
- 30, 31, 32, 33, 34, 35, 36, 37, 8, 9,
- 39, 64, 39, 42, 44, 42, 45, 46, 45, 46,
- 68, 64, 68, 56, 53, 54, 53, 54, 58, 59,
- 60, 68, 68, 63, 8, 9, 64, 64, 38, 39,
- 69, 6, 42, 8, 9, 45, 46, 47, 48, 68,
- 68, 51, 52, 53, 54, 8, 9, 68, 58, 64,
- 60, 64, 68, 67, 38, 39, 64, 67, 42, 69,
- 70, 45, 46, 47, 48, 8, 9, 51, 52, 8,
- 9, 64, 64, 40, 58, 38, 60, 66, 8, 9,
- 9, 67, 64, 67, 64, 69, 70, 68, 64, 67,
- 53, 54, 8, 9, 64, 38, 68, 60, 64, 38,
- 106, 62, 65, 326, 67, 8, 9, 70, 38, 191,
- 53, 54, -1, -1, -1, -1, -1, 60, -1, 58,
- -1, 60, 38, -1, 67, -1, 56, 70, 67, -1,
- 60, 70, -1, -1, -1, 38, -1, 67, -1, -1,
- 70, -1, -1, -1, 60, -1, 39, -1, -1, 42,
- -1, 67, 45, 46, 70, -1, -1, 60, -1, -1,
- 53, 54, -1, -1, 67, -1, -1, 70, 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, -1, 64,
- 5, 6, 7, 8, 9, 10, 11, 12, 63, 4,
- 5, 6, 7, 8, 9, 10, 11, 12, 63, 6,
- 7, 8, 9, 10, 11, 12
+ 28, 29, 45, 60, 0, 132, 27, 15, 16, 37,
+ 38, 39, 61, 62, 37, 38, 44, 15, 16, 67,
+ 9, 44, 29, 46, 61, 9, 63, 64, 63, 27,
+ 28, 29, 39, 8, 9, 58, 38, 39, 40, 41,
+ 68, 39, 65, 66, 42, 110, 111, 45, 149, 150,
+ 48, 49, 8, 9, 64, 6, 54, 8, 9, 9,
+ 108, 82, 37, 95, 62, 97, 37, 38, 18, 19,
+ 61, 119, 56, 44, 38, 64, 26, 66, 53, 54,
+ 44, 37, 8, 9, 82, 60, 114, 188, 116, 166,
+ 40, 168, 67, 43, 62, 70, 46, 47, 8, 9,
+ 108, 63, 58, 101, 60, 38, 64, 114, 41, 174,
+ 108, 67, 45, 46, 70, 67, 114, 11, 146, 151,
+ 53, 54, 53, 54, 47, 48, 191, 37, 126, 127,
+ 69, 159, 160, 64, 132, 67, 134, 165, 265, 67,
+ 47, 48, 190, 171, 64, 173, 53, 54, 171, 172,
+ 60, 67, 159, 67, 152, 153, 184, 67, 165, 69,
+ 70, 159, 69, 195, 196, 197, 173, 165, 200, 201,
+ 202, 203, 204, 47, 48, 173, 67, 214, 8, 9,
+ 217, 218, 67, 215, 64, 135, 3, 4, 5, 6,
+ 7, 8, 9, 10, 11, 12, 219, 220, 38, 39,
+ 40, 64, 230, 231, 232, 233, 227, 37, 38, 41,
+ 267, 41, 64, 45, 46, 45, 46, 8, 9, 64,
+ 248, 249, 250, 10, 11, 12, 258, 259, 251, 227,
+ 60, 67, 230, 231, 232, 233, 186, 67, 47, 48,
+ 70, 8, 9, 10, 53, 54, 37, 290, 231, 232,
+ 233, 68, 3, 4, 5, 6, 7, 8, 9, 10,
+ 11, 12, 53, 54, 287, 49, 50, 304, 64, 60,
+ 37, 64, 295, 67, 65, 303, 67, 7, 38, 70,
+ 68, 41, 249, 250, 307, 45, 46, 64, 316, 56,
+ 57, 58, 290, 60, 67, 323, 246, 329, 64, 327,
+ 67, 64, 252, 70, 336, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 313, 1, 68, 64, 64,
+ 64, 64, 272, 7, 6, 8, 9, 69, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, 26, 7, 28, 29, 30, 31, 32, 33, 34,
+ 35, 36, 8, 9, 37, 7, 67, 66, 43, 44,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 68, 41, 65, 58, 59, 60, 64, 60, 63, 8,
+ 9, 37, 38, 6, 67, 41, 7, 70, 64, 45,
+ 46, 47, 48, 68, 56, 51, 52, 53, 54, 8,
+ 9, 64, 58, 67, 60, 8, 9, 68, 37, 38,
+ 68, 67, 41, 69, 70, 68, 45, 46, 47, 48,
+ 68, 64, 51, 52, 8, 9, 64, 68, 37, 58,
+ 64, 60, 6, 7, 37, 9, 8, 9, 67, 64,
+ 69, 70, 8, 9, 8, 9, 10, 11, 12, 58,
+ 59, 60, 68, 37, 69, 58, 59, 60, 67, 64,
+ 64, 70, 64, 39, 67, 37, 66, 70, 9, 67,
+ 38, 37, 68, 41, 58, 64, 60, 45, 46, 64,
+ 67, 55, 64, 67, 56, 64, 70, 68, 60, 64,
+ 108, 330, 63, 194, 60, 67, 64, -1, 70, -1,
+ -1, 67, -1, -1, 70, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 38, -1, 38, 41, -1,
+ 41, -1, 45, 46, 45, 46, -1, -1, -1, -1,
+ 53, 54, 53, 54, 6, 7, 8, -1, 10, 11,
+ 12, 13, 14, 64, -1, 17, 69, -1, 20, 21,
+ 22, 23, 24, 25, -1, 63, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 63, 3, 4, 5, 6,
+ 7, 8, 9, 10, 11, 12, 38, 39, 40, 41,
+ -1, -1, -1, 45, 46, 5, 6, 7, 8, 9,
+ 10, 11, 12, 6, 7, 8, 9, 10, 11, 12
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -904,39 +903,39 @@ static const yytype_int16 yycheck[] =
static const yytype_uint8 yystos[] =
{
0, 72, 0, 73, 1, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 22, 23, 24, 25, 26, 29,
- 30, 31, 32, 33, 34, 35, 36, 37, 44, 58,
- 59, 60, 63, 74, 77, 63, 78, 78, 78, 78,
- 64, 79, 78, 78, 78, 78, 78, 8, 9, 38,
- 58, 60, 67, 70, 100, 103, 100, 78, 79, 79,
- 78, 78, 78, 78, 78, 78, 79, 67, 86, 87,
- 88, 100, 103, 69, 90, 61, 62, 61, 62, 63,
- 39, 42, 45, 46, 53, 54, 89, 90, 91, 93,
- 95, 96, 89, 47, 48, 51, 52, 69, 81, 82,
- 84, 88, 91, 93, 99, 103, 79, 79, 58, 59,
- 80, 103, 79, 89, 65, 87, 103, 79, 91, 96,
- 79, 103, 103, 6, 8, 9, 101, 103, 105, 103,
- 64, 67, 11, 91, 81, 99, 103, 69, 82, 98,
- 99, 99, 91, 91, 67, 86, 96, 67, 67, 103,
- 64, 76, 105, 75, 105, 67, 64, 6, 7, 9,
- 55, 64, 67, 9, 10, 56, 57, 88, 103, 64,
- 67, 58, 80, 85, 86, 100, 103, 101, 101, 67,
- 84, 64, 83, 96, 64, 67, 86, 64, 7, 103,
- 103, 67, 3, 4, 5, 6, 7, 8, 9, 10,
- 11, 12, 68, 90, 103, 39, 40, 41, 102, 103,
- 79, 64, 64, 9, 64, 64, 64, 64, 68, 95,
- 95, 90, 74, 63, 74, 63, 105, 91, 96, 6,
- 7, 7, 7, 91, 103, 56, 69, 84, 96, 101,
- 67, 42, 96, 66, 9, 79, 65, 64, 86, 101,
- 102, 105, 105, 105, 6, 7, 105, 105, 105, 105,
- 105, 64, 68, 64, 99, 105, 48, 99, 99, 91,
- 91, 68, 68, 68, 64, 94, 96, 103, 94, 94,
- 94, 68, 88, 68, 68, 79, 64, 96, 83, 83,
- 91, 64, 79, 67, 68, 105, 105, 90, 81, 64,
- 64, 79, 64, 64, 91, 87, 66, 91, 40, 9,
- 96, 99, 67, 92, 91, 68, 103, 64, 96, 64,
- 49, 50, 97, 64, 96, 67, 64, 96, 105, 97,
- 68, 68, 64, 104, 105
+ 18, 19, 20, 21, 22, 23, 24, 25, 26, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 43, 44,
+ 58, 59, 60, 63, 74, 77, 63, 78, 78, 78,
+ 78, 64, 79, 78, 78, 78, 78, 78, 8, 9,
+ 37, 58, 60, 67, 70, 100, 103, 100, 78, 79,
+ 79, 78, 78, 78, 78, 78, 78, 79, 67, 86,
+ 87, 88, 100, 103, 38, 41, 45, 46, 47, 48,
+ 51, 52, 69, 81, 82, 84, 88, 91, 93, 95,
+ 96, 99, 103, 84, 61, 62, 61, 62, 63, 53,
+ 54, 69, 89, 90, 91, 93, 89, 84, 79, 79,
+ 58, 59, 80, 103, 79, 89, 65, 87, 103, 79,
+ 91, 96, 79, 103, 103, 6, 8, 9, 101, 103,
+ 105, 103, 64, 67, 11, 91, 81, 99, 103, 69,
+ 82, 98, 99, 99, 91, 91, 67, 86, 96, 67,
+ 67, 67, 67, 9, 10, 56, 57, 88, 103, 64,
+ 67, 6, 7, 9, 55, 64, 76, 105, 75, 105,
+ 103, 64, 64, 64, 58, 80, 85, 86, 100, 103,
+ 101, 101, 67, 84, 64, 83, 96, 64, 67, 86,
+ 64, 7, 103, 103, 67, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 68, 90, 103, 38, 39,
+ 40, 102, 103, 79, 64, 64, 9, 64, 64, 64,
+ 64, 68, 95, 95, 105, 103, 56, 69, 84, 96,
+ 6, 7, 7, 7, 84, 74, 63, 74, 63, 91,
+ 96, 91, 84, 101, 67, 41, 96, 66, 9, 79,
+ 65, 64, 86, 101, 102, 105, 105, 105, 6, 7,
+ 105, 105, 105, 105, 105, 64, 68, 64, 99, 105,
+ 48, 99, 99, 91, 91, 68, 68, 68, 68, 88,
+ 68, 94, 96, 103, 94, 94, 94, 64, 68, 79,
+ 64, 96, 83, 83, 91, 64, 79, 67, 68, 105,
+ 105, 90, 81, 64, 64, 79, 64, 64, 91, 87,
+ 66, 91, 39, 9, 96, 99, 67, 92, 91, 68,
+ 103, 64, 96, 64, 49, 50, 97, 64, 96, 67,
+ 64, 96, 105, 97, 68, 68, 64, 104, 105
};
#define yyerrok (yyerrstatus = 0)
@@ -2044,40 +2043,53 @@ yyreduce:
case 45:
#line 326 "a.y"
{
+ if((yyvsp[(2) - (4)].gen).type != D_CONST || (yyvsp[(4) - (4)].gen).type != D_CONST)
+ yyerror("arguments to PCDATA must be integer constants");
outcode((yyvsp[(1) - (4)].lval), Always, &(yyvsp[(2) - (4)].gen), NREG, &(yyvsp[(4) - (4)].gen));
}
break;
case 46:
-#line 333 "a.y"
+#line 335 "a.y"
{
- outcode((yyvsp[(1) - (2)].lval), Always, &nullgen, NREG, &nullgen);
+ if((yyvsp[(2) - (4)].gen).type != D_CONST)
+ yyerror("index for FUNCDATA must be integer constant");
+ if((yyvsp[(4) - (4)].gen).type != D_EXTERN && (yyvsp[(4) - (4)].gen).type != D_STATIC)
+ yyerror("value for FUNCDATA must be symbol reference");
+ outcode((yyvsp[(1) - (4)].lval), Always, &(yyvsp[(2) - (4)].gen), NREG, &(yyvsp[(4) - (4)].gen));
}
break;
case 47:
-#line 338 "a.y"
+#line 346 "a.y"
{
- (yyval.lval) = Always;
+ outcode((yyvsp[(1) - (2)].lval), Always, &nullgen, NREG, &nullgen);
}
break;
case 48:
-#line 342 "a.y"
+#line 351 "a.y"
{
- (yyval.lval) = ((yyvsp[(1) - (2)].lval) & ~C_SCOND) | (yyvsp[(2) - (2)].lval);
+ (yyval.lval) = Always;
}
break;
case 49:
-#line 346 "a.y"
+#line 355 "a.y"
+ {
+ (yyval.lval) = ((yyvsp[(1) - (2)].lval) & ~C_SCOND) | (yyvsp[(2) - (2)].lval);
+ }
+ break;
+
+ case 50:
+#line 359 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (2)].lval) | (yyvsp[(2) - (2)].lval);
}
break;
- case 52:
-#line 355 "a.y"
+ case 53:
+#line 368 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_BRANCH;
@@ -2085,8 +2097,8 @@ yyreduce:
}
break;
- case 53:
-#line 361 "a.y"
+ case 54:
+#line 374 "a.y"
{
(yyval.gen) = nullgen;
if(pass == 2)
@@ -2097,8 +2109,8 @@ yyreduce:
}
break;
- case 54:
-#line 370 "a.y"
+ case 55:
+#line 383 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_BRANCH;
@@ -2107,8 +2119,8 @@ yyreduce:
}
break;
- case 55:
-#line 378 "a.y"
+ case 56:
+#line 391 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_CONST;
@@ -2116,24 +2128,24 @@ yyreduce:
}
break;
- case 56:
-#line 384 "a.y"
+ case 57:
+#line 397 "a.y"
{
(yyval.gen) = (yyvsp[(2) - (2)].gen);
(yyval.gen).type = D_CONST;
}
break;
- case 57:
-#line 389 "a.y"
+ case 58:
+#line 402 "a.y"
{
(yyval.gen) = (yyvsp[(4) - (4)].gen);
(yyval.gen).type = D_OCONST;
}
break;
- case 58:
-#line 394 "a.y"
+ case 59:
+#line 407 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_SCONST;
@@ -2141,8 +2153,8 @@ yyreduce:
}
break;
- case 60:
-#line 403 "a.y"
+ case 61:
+#line 416 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_FCONST;
@@ -2150,8 +2162,8 @@ yyreduce:
}
break;
- case 61:
-#line 409 "a.y"
+ case 62:
+#line 422 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_FCONST;
@@ -2159,15 +2171,15 @@ yyreduce:
}
break;
- case 62:
-#line 417 "a.y"
+ case 63:
+#line 430 "a.y"
{
(yyval.lval) = 1 << (yyvsp[(1) - (1)].lval);
}
break;
- case 63:
-#line 421 "a.y"
+ case 64:
+#line 434 "a.y"
{
int i;
(yyval.lval)=0;
@@ -2178,23 +2190,23 @@ yyreduce:
}
break;
- case 64:
-#line 430 "a.y"
+ case 65:
+#line 443 "a.y"
{
(yyval.lval) = (1<<(yyvsp[(1) - (3)].lval)) | (yyvsp[(3) - (3)].lval);
}
break;
- case 68:
-#line 439 "a.y"
+ case 69:
+#line 452 "a.y"
{
(yyval.gen) = (yyvsp[(1) - (4)].gen);
(yyval.gen).reg = (yyvsp[(3) - (4)].lval);
}
break;
- case 69:
-#line 444 "a.y"
+ case 70:
+#line 457 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_PSR;
@@ -2202,8 +2214,8 @@ yyreduce:
}
break;
- case 70:
-#line 450 "a.y"
+ case 71:
+#line 463 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_FPCR;
@@ -2211,8 +2223,8 @@ yyreduce:
}
break;
- case 71:
-#line 456 "a.y"
+ case 72:
+#line 469 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_OREG;
@@ -2220,8 +2232,8 @@ yyreduce:
}
break;
- case 75:
-#line 467 "a.y"
+ case 76:
+#line 480 "a.y"
{
(yyval.gen) = (yyvsp[(1) - (1)].gen);
if((yyvsp[(1) - (1)].gen).name != D_EXTERN && (yyvsp[(1) - (1)].gen).name != D_STATIC) {
@@ -2229,8 +2241,8 @@ yyreduce:
}
break;
- case 76:
-#line 475 "a.y"
+ case 77:
+#line 488 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_OREG;
@@ -2239,8 +2251,8 @@ yyreduce:
}
break;
- case 78:
-#line 485 "a.y"
+ case 79:
+#line 498 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_OREG;
@@ -2249,8 +2261,8 @@ yyreduce:
}
break;
- case 80:
-#line 495 "a.y"
+ case 81:
+#line 508 "a.y"
{
(yyval.gen) = (yyvsp[(1) - (4)].gen);
(yyval.gen).type = D_OREG;
@@ -2258,8 +2270,8 @@ yyreduce:
}
break;
- case 85:
-#line 508 "a.y"
+ case 86:
+#line 521 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_CONST;
@@ -2267,8 +2279,8 @@ yyreduce:
}
break;
- case 86:
-#line 516 "a.y"
+ case 87:
+#line 529 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_REG;
@@ -2276,8 +2288,8 @@ yyreduce:
}
break;
- case 87:
-#line 524 "a.y"
+ case 88:
+#line 537 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_REGREG;
@@ -2286,8 +2298,8 @@ yyreduce:
}
break;
- case 88:
-#line 533 "a.y"
+ case 89:
+#line 546 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_SHIFT;
@@ -2295,8 +2307,8 @@ yyreduce:
}
break;
- case 89:
-#line 539 "a.y"
+ case 90:
+#line 552 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_SHIFT;
@@ -2304,8 +2316,8 @@ yyreduce:
}
break;
- case 90:
-#line 545 "a.y"
+ case 91:
+#line 558 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_SHIFT;
@@ -2313,8 +2325,8 @@ yyreduce:
}
break;
- case 91:
-#line 551 "a.y"
+ case 92:
+#line 564 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_SHIFT;
@@ -2322,8 +2334,8 @@ yyreduce:
}
break;
- case 92:
-#line 559 "a.y"
+ case 93:
+#line 572 "a.y"
{
if((yyval.lval) < 0 || (yyval.lval) >= 16)
print("register value out of range\n");
@@ -2331,8 +2343,8 @@ yyreduce:
}
break;
- case 93:
-#line 565 "a.y"
+ case 94:
+#line 578 "a.y"
{
if((yyval.lval) < 0 || (yyval.lval) >= 32)
print("shift value out of range\n");
@@ -2340,15 +2352,15 @@ yyreduce:
}
break;
- case 95:
-#line 574 "a.y"
+ case 96:
+#line 587 "a.y"
{
(yyval.lval) = REGPC;
}
break;
- case 96:
-#line 578 "a.y"
+ case 97:
+#line 591 "a.y"
{
if((yyvsp[(3) - (4)].lval) < 0 || (yyvsp[(3) - (4)].lval) >= NREG)
print("register value out of range\n");
@@ -2356,15 +2368,15 @@ yyreduce:
}
break;
- case 98:
-#line 587 "a.y"
+ case 99:
+#line 600 "a.y"
{
(yyval.lval) = REGSP;
}
break;
- case 100:
-#line 594 "a.y"
+ case 101:
+#line 607 "a.y"
{
if((yyvsp[(3) - (4)].lval) < 0 || (yyvsp[(3) - (4)].lval) >= NREG)
print("register value out of range\n");
@@ -2372,8 +2384,8 @@ yyreduce:
}
break;
- case 103:
-#line 606 "a.y"
+ case 104:
+#line 619 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_FREG;
@@ -2381,8 +2393,8 @@ yyreduce:
}
break;
- case 104:
-#line 612 "a.y"
+ case 105:
+#line 625 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_FREG;
@@ -2390,8 +2402,8 @@ yyreduce:
}
break;
- case 105:
-#line 620 "a.y"
+ case 106:
+#line 633 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_OREG;
@@ -2401,8 +2413,8 @@ yyreduce:
}
break;
- case 106:
-#line 628 "a.y"
+ case 107:
+#line 641 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_OREG;
@@ -2412,8 +2424,8 @@ yyreduce:
}
break;
- case 107:
-#line 636 "a.y"
+ case 108:
+#line 649 "a.y"
{
(yyval.gen) = nullgen;
(yyval.gen).type = D_OREG;
@@ -2423,141 +2435,141 @@ yyreduce:
}
break;
- case 108:
-#line 645 "a.y"
+ case 109:
+#line 658 "a.y"
{
(yyval.lval) = 0;
}
break;
- case 109:
-#line 649 "a.y"
+ case 110:
+#line 662 "a.y"
{
(yyval.lval) = (yyvsp[(2) - (2)].lval);
}
break;
- case 110:
-#line 653 "a.y"
+ case 111:
+#line 666 "a.y"
{
(yyval.lval) = -(yyvsp[(2) - (2)].lval);
}
break;
- case 115:
-#line 665 "a.y"
+ case 116:
+#line 678 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (1)].sym)->value;
}
break;
- case 116:
-#line 669 "a.y"
+ case 117:
+#line 682 "a.y"
{
(yyval.lval) = -(yyvsp[(2) - (2)].lval);
}
break;
- case 117:
-#line 673 "a.y"
+ case 118:
+#line 686 "a.y"
{
(yyval.lval) = (yyvsp[(2) - (2)].lval);
}
break;
- case 118:
-#line 677 "a.y"
+ case 119:
+#line 690 "a.y"
{
(yyval.lval) = ~(yyvsp[(2) - (2)].lval);
}
break;
- case 119:
-#line 681 "a.y"
+ case 120:
+#line 694 "a.y"
{
(yyval.lval) = (yyvsp[(2) - (3)].lval);
}
break;
- case 120:
-#line 686 "a.y"
+ case 121:
+#line 699 "a.y"
{
(yyval.lval) = 0;
}
break;
- case 121:
-#line 690 "a.y"
+ case 122:
+#line 703 "a.y"
{
(yyval.lval) = (yyvsp[(2) - (2)].lval);
}
break;
- case 123:
-#line 697 "a.y"
+ case 124:
+#line 710 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) + (yyvsp[(3) - (3)].lval);
}
break;
- case 124:
-#line 701 "a.y"
+ case 125:
+#line 714 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) - (yyvsp[(3) - (3)].lval);
}
break;
- case 125:
-#line 705 "a.y"
+ case 126:
+#line 718 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) * (yyvsp[(3) - (3)].lval);
}
break;
- case 126:
-#line 709 "a.y"
+ case 127:
+#line 722 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) / (yyvsp[(3) - (3)].lval);
}
break;
- case 127:
-#line 713 "a.y"
+ case 128:
+#line 726 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) % (yyvsp[(3) - (3)].lval);
}
break;
- case 128:
-#line 717 "a.y"
+ case 129:
+#line 730 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (4)].lval) << (yyvsp[(4) - (4)].lval);
}
break;
- case 129:
-#line 721 "a.y"
+ case 130:
+#line 734 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (4)].lval) >> (yyvsp[(4) - (4)].lval);
}
break;
- case 130:
-#line 725 "a.y"
+ case 131:
+#line 738 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) & (yyvsp[(3) - (3)].lval);
}
break;
- case 131:
-#line 729 "a.y"
+ case 132:
+#line 742 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) ^ (yyvsp[(3) - (3)].lval);
}
break;
- case 132:
-#line 733 "a.y"
+ case 133:
+#line 746 "a.y"
{
(yyval.lval) = (yyvsp[(1) - (3)].lval) | (yyvsp[(3) - (3)].lval);
}
@@ -2565,7 +2577,7 @@ yyreduce:
/* Line 1267 of yacc.c. */
-#line 2569 "y.tab.c"
+#line 2581 "y.tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
diff --git a/src/cmd/5a/y.tab.h b/src/cmd/5a/y.tab.h
index 3354f3933..63074de41 100644
--- a/src/cmd/5a/y.tab.h
+++ b/src/cmd/5a/y.tab.h
@@ -53,24 +53,24 @@
LTYPEC = 269,
LTYPED = 270,
LTYPEE = 271,
- LTYPEF = 272,
- LTYPEG = 273,
- LTYPEH = 274,
- LTYPEI = 275,
- LTYPEJ = 276,
- LTYPEK = 277,
- LTYPEL = 278,
- LTYPEM = 279,
- LTYPEN = 280,
- LTYPEBX = 281,
- LTYPEPLD = 282,
- LCONST = 283,
- LSP = 284,
- LSB = 285,
- LFP = 286,
- LPC = 287,
- LTYPEX = 288,
- LTYPEPC = 289,
+ LTYPEG = 272,
+ LTYPEH = 273,
+ LTYPEI = 274,
+ LTYPEJ = 275,
+ LTYPEK = 276,
+ LTYPEL = 277,
+ LTYPEM = 278,
+ LTYPEN = 279,
+ LTYPEBX = 280,
+ LTYPEPLD = 281,
+ LCONST = 282,
+ LSP = 283,
+ LSB = 284,
+ LFP = 285,
+ LPC = 286,
+ LTYPEX = 287,
+ LTYPEPC = 288,
+ LTYPEF = 289,
LR = 290,
LREG = 291,
LF = 292,
@@ -104,24 +104,24 @@
#define LTYPEC 269
#define LTYPED 270
#define LTYPEE 271
-#define LTYPEF 272
-#define LTYPEG 273
-#define LTYPEH 274
-#define LTYPEI 275
-#define LTYPEJ 276
-#define LTYPEK 277
-#define LTYPEL 278
-#define LTYPEM 279
-#define LTYPEN 280
-#define LTYPEBX 281
-#define LTYPEPLD 282
-#define LCONST 283
-#define LSP 284
-#define LSB 285
-#define LFP 286
-#define LPC 287
-#define LTYPEX 288
-#define LTYPEPC 289
+#define LTYPEG 272
+#define LTYPEH 273
+#define LTYPEI 274
+#define LTYPEJ 275
+#define LTYPEK 276
+#define LTYPEL 277
+#define LTYPEM 278
+#define LTYPEN 279
+#define LTYPEBX 280
+#define LTYPEPLD 281
+#define LCONST 282
+#define LSP 283
+#define LSB 284
+#define LFP 285
+#define LPC 286
+#define LTYPEX 287
+#define LTYPEPC 288
+#define LTYPEF 289
#define LR 290
#define LREG 291
#define LF 292