xref: /netbsd-src/external/gpl3/binutils.old/dist/gas/config/rl78-parse.h (revision c42dbd0ed2e61fe6eda8590caa852ccf34719964)
1*c42dbd0eSchristos /* A Bison parser, made by GNU Bison 3.8.2.  */
2*c42dbd0eSchristos 
3*c42dbd0eSchristos /* Bison interface for Yacc-like parsers in C
4*c42dbd0eSchristos 
5*c42dbd0eSchristos    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6*c42dbd0eSchristos    Inc.
7*c42dbd0eSchristos 
8*c42dbd0eSchristos    This program is free software: you can redistribute it and/or modify
9*c42dbd0eSchristos    it under the terms of the GNU General Public License as published by
10*c42dbd0eSchristos    the Free Software Foundation, either version 3 of the License, or
11*c42dbd0eSchristos    (at your option) any later version.
12*c42dbd0eSchristos 
13*c42dbd0eSchristos    This program is distributed in the hope that it will be useful,
14*c42dbd0eSchristos    but WITHOUT ANY WARRANTY; without even the implied warranty of
15*c42dbd0eSchristos    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16*c42dbd0eSchristos    GNU General Public License for more details.
17*c42dbd0eSchristos 
18*c42dbd0eSchristos    You should have received a copy of the GNU General Public License
19*c42dbd0eSchristos    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
20*c42dbd0eSchristos 
21*c42dbd0eSchristos /* As a special exception, you may create a larger work that contains
22*c42dbd0eSchristos    part or all of the Bison parser skeleton and distribute that work
23*c42dbd0eSchristos    under terms of your choice, so long as that work isn't itself a
24*c42dbd0eSchristos    parser generator using the skeleton or a modified version thereof
25*c42dbd0eSchristos    as a parser skeleton.  Alternatively, if you modify or redistribute
26*c42dbd0eSchristos    the parser skeleton itself, you may (at your option) remove this
27*c42dbd0eSchristos    special exception, which will cause the skeleton and the resulting
28*c42dbd0eSchristos    Bison output files to be licensed under the GNU General Public
29*c42dbd0eSchristos    License without this special exception.
30*c42dbd0eSchristos 
31*c42dbd0eSchristos    This special exception was added by the Free Software Foundation in
32*c42dbd0eSchristos    version 2.2 of Bison.  */
33*c42dbd0eSchristos 
34*c42dbd0eSchristos /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
35*c42dbd0eSchristos    especially those whose name start with YY_ or yy_.  They are
36*c42dbd0eSchristos    private implementation details that can be changed or removed.  */
37*c42dbd0eSchristos 
38*c42dbd0eSchristos #ifndef YY_RL78_CONFIG_RL_PARSE_H_INCLUDED
39*c42dbd0eSchristos # define YY_RL78_CONFIG_RL_PARSE_H_INCLUDED
40*c42dbd0eSchristos /* Debug traces.  */
41*c42dbd0eSchristos #ifndef YYDEBUG
42*c42dbd0eSchristos # define YYDEBUG 0
43*c42dbd0eSchristos #endif
44*c42dbd0eSchristos #if YYDEBUG
45*c42dbd0eSchristos extern int rl78_debug;
46*c42dbd0eSchristos #endif
47*c42dbd0eSchristos 
48*c42dbd0eSchristos /* Token kinds.  */
49*c42dbd0eSchristos #ifndef YYTOKENTYPE
50*c42dbd0eSchristos # define YYTOKENTYPE
51*c42dbd0eSchristos   enum yytokentype
52*c42dbd0eSchristos   {
53*c42dbd0eSchristos     YYEMPTY = -2,
54*c42dbd0eSchristos     YYEOF = 0,                     /* "end of file"  */
55*c42dbd0eSchristos     YYerror = 256,                 /* error  */
56*c42dbd0eSchristos     YYUNDEF = 257,                 /* "invalid token"  */
57*c42dbd0eSchristos     A = 258,                       /* A  */
58*c42dbd0eSchristos     X = 259,                       /* X  */
59*c42dbd0eSchristos     B = 260,                       /* B  */
60*c42dbd0eSchristos     C = 261,                       /* C  */
61*c42dbd0eSchristos     D = 262,                       /* D  */
62*c42dbd0eSchristos     E = 263,                       /* E  */
63*c42dbd0eSchristos     H = 264,                       /* H  */
64*c42dbd0eSchristos     L = 265,                       /* L  */
65*c42dbd0eSchristos     AX = 266,                      /* AX  */
66*c42dbd0eSchristos     BC = 267,                      /* BC  */
67*c42dbd0eSchristos     DE = 268,                      /* DE  */
68*c42dbd0eSchristos     HL = 269,                      /* HL  */
69*c42dbd0eSchristos     SPL = 270,                     /* SPL  */
70*c42dbd0eSchristos     SPH = 271,                     /* SPH  */
71*c42dbd0eSchristos     PSW = 272,                     /* PSW  */
72*c42dbd0eSchristos     CS = 273,                      /* CS  */
73*c42dbd0eSchristos     ES = 274,                      /* ES  */
74*c42dbd0eSchristos     PMC = 275,                     /* PMC  */
75*c42dbd0eSchristos     MEM = 276,                     /* MEM  */
76*c42dbd0eSchristos     FLAG = 277,                    /* FLAG  */
77*c42dbd0eSchristos     SP = 278,                      /* SP  */
78*c42dbd0eSchristos     CY = 279,                      /* CY  */
79*c42dbd0eSchristos     RB0 = 280,                     /* RB0  */
80*c42dbd0eSchristos     RB1 = 281,                     /* RB1  */
81*c42dbd0eSchristos     RB2 = 282,                     /* RB2  */
82*c42dbd0eSchristos     RB3 = 283,                     /* RB3  */
83*c42dbd0eSchristos     EXPR = 284,                    /* EXPR  */
84*c42dbd0eSchristos     UNKNOWN_OPCODE = 285,          /* UNKNOWN_OPCODE  */
85*c42dbd0eSchristos     IS_OPCODE = 286,               /* IS_OPCODE  */
86*c42dbd0eSchristos     DOT_S = 287,                   /* DOT_S  */
87*c42dbd0eSchristos     DOT_B = 288,                   /* DOT_B  */
88*c42dbd0eSchristos     DOT_W = 289,                   /* DOT_W  */
89*c42dbd0eSchristos     DOT_L = 290,                   /* DOT_L  */
90*c42dbd0eSchristos     DOT_A = 291,                   /* DOT_A  */
91*c42dbd0eSchristos     DOT_UB = 292,                  /* DOT_UB  */
92*c42dbd0eSchristos     DOT_UW = 293,                  /* DOT_UW  */
93*c42dbd0eSchristos     ADD = 294,                     /* ADD  */
94*c42dbd0eSchristos     ADDC = 295,                    /* ADDC  */
95*c42dbd0eSchristos     ADDW = 296,                    /* ADDW  */
96*c42dbd0eSchristos     AND_ = 297,                    /* AND_  */
97*c42dbd0eSchristos     AND1 = 298,                    /* AND1  */
98*c42dbd0eSchristos     BF = 299,                      /* BF  */
99*c42dbd0eSchristos     BH = 300,                      /* BH  */
100*c42dbd0eSchristos     BNC = 301,                     /* BNC  */
101*c42dbd0eSchristos     BNH = 302,                     /* BNH  */
102*c42dbd0eSchristos     BNZ = 303,                     /* BNZ  */
103*c42dbd0eSchristos     BR = 304,                      /* BR  */
104*c42dbd0eSchristos     BRK = 305,                     /* BRK  */
105*c42dbd0eSchristos     BRK1 = 306,                    /* BRK1  */
106*c42dbd0eSchristos     BT = 307,                      /* BT  */
107*c42dbd0eSchristos     BTCLR = 308,                   /* BTCLR  */
108*c42dbd0eSchristos     BZ = 309,                      /* BZ  */
109*c42dbd0eSchristos     CALL = 310,                    /* CALL  */
110*c42dbd0eSchristos     CALLT = 311,                   /* CALLT  */
111*c42dbd0eSchristos     CLR1 = 312,                    /* CLR1  */
112*c42dbd0eSchristos     CLRB = 313,                    /* CLRB  */
113*c42dbd0eSchristos     CLRW = 314,                    /* CLRW  */
114*c42dbd0eSchristos     CMP = 315,                     /* CMP  */
115*c42dbd0eSchristos     CMP0 = 316,                    /* CMP0  */
116*c42dbd0eSchristos     CMPS = 317,                    /* CMPS  */
117*c42dbd0eSchristos     CMPW = 318,                    /* CMPW  */
118*c42dbd0eSchristos     DEC = 319,                     /* DEC  */
119*c42dbd0eSchristos     DECW = 320,                    /* DECW  */
120*c42dbd0eSchristos     DI = 321,                      /* DI  */
121*c42dbd0eSchristos     DIVHU = 322,                   /* DIVHU  */
122*c42dbd0eSchristos     DIVWU = 323,                   /* DIVWU  */
123*c42dbd0eSchristos     EI = 324,                      /* EI  */
124*c42dbd0eSchristos     HALT = 325,                    /* HALT  */
125*c42dbd0eSchristos     INC = 326,                     /* INC  */
126*c42dbd0eSchristos     INCW = 327,                    /* INCW  */
127*c42dbd0eSchristos     MACH = 328,                    /* MACH  */
128*c42dbd0eSchristos     MACHU = 329,                   /* MACHU  */
129*c42dbd0eSchristos     MOV = 330,                     /* MOV  */
130*c42dbd0eSchristos     MOV1 = 331,                    /* MOV1  */
131*c42dbd0eSchristos     MOVS = 332,                    /* MOVS  */
132*c42dbd0eSchristos     MOVW = 333,                    /* MOVW  */
133*c42dbd0eSchristos     MULH = 334,                    /* MULH  */
134*c42dbd0eSchristos     MULHU = 335,                   /* MULHU  */
135*c42dbd0eSchristos     MULU = 336,                    /* MULU  */
136*c42dbd0eSchristos     NOP = 337,                     /* NOP  */
137*c42dbd0eSchristos     NOT1 = 338,                    /* NOT1  */
138*c42dbd0eSchristos     ONEB = 339,                    /* ONEB  */
139*c42dbd0eSchristos     ONEW = 340,                    /* ONEW  */
140*c42dbd0eSchristos     OR = 341,                      /* OR  */
141*c42dbd0eSchristos     OR1 = 342,                     /* OR1  */
142*c42dbd0eSchristos     POP = 343,                     /* POP  */
143*c42dbd0eSchristos     PUSH = 344,                    /* PUSH  */
144*c42dbd0eSchristos     RET = 345,                     /* RET  */
145*c42dbd0eSchristos     RETI = 346,                    /* RETI  */
146*c42dbd0eSchristos     RETB = 347,                    /* RETB  */
147*c42dbd0eSchristos     ROL = 348,                     /* ROL  */
148*c42dbd0eSchristos     ROLC = 349,                    /* ROLC  */
149*c42dbd0eSchristos     ROLWC = 350,                   /* ROLWC  */
150*c42dbd0eSchristos     ROR = 351,                     /* ROR  */
151*c42dbd0eSchristos     RORC = 352,                    /* RORC  */
152*c42dbd0eSchristos     SAR = 353,                     /* SAR  */
153*c42dbd0eSchristos     SARW = 354,                    /* SARW  */
154*c42dbd0eSchristos     SEL = 355,                     /* SEL  */
155*c42dbd0eSchristos     SET1 = 356,                    /* SET1  */
156*c42dbd0eSchristos     SHL = 357,                     /* SHL  */
157*c42dbd0eSchristos     SHLW = 358,                    /* SHLW  */
158*c42dbd0eSchristos     SHR = 359,                     /* SHR  */
159*c42dbd0eSchristos     SHRW = 360,                    /* SHRW  */
160*c42dbd0eSchristos     SKC = 361,                     /* SKC  */
161*c42dbd0eSchristos     SKH = 362,                     /* SKH  */
162*c42dbd0eSchristos     SKNC = 363,                    /* SKNC  */
163*c42dbd0eSchristos     SKNH = 364,                    /* SKNH  */
164*c42dbd0eSchristos     SKNZ = 365,                    /* SKNZ  */
165*c42dbd0eSchristos     SKZ = 366,                     /* SKZ  */
166*c42dbd0eSchristos     STOP = 367,                    /* STOP  */
167*c42dbd0eSchristos     SUB = 368,                     /* SUB  */
168*c42dbd0eSchristos     SUBC = 369,                    /* SUBC  */
169*c42dbd0eSchristos     SUBW = 370,                    /* SUBW  */
170*c42dbd0eSchristos     XCH = 371,                     /* XCH  */
171*c42dbd0eSchristos     XCHW = 372,                    /* XCHW  */
172*c42dbd0eSchristos     XOR = 373,                     /* XOR  */
173*c42dbd0eSchristos     XOR1 = 374                     /* XOR1  */
174*c42dbd0eSchristos   };
175*c42dbd0eSchristos   typedef enum yytokentype yytoken_kind_t;
176*c42dbd0eSchristos #endif
177*c42dbd0eSchristos /* Token kinds.  */
178*c42dbd0eSchristos #define YYEMPTY -2
179*c42dbd0eSchristos #define YYEOF 0
180*c42dbd0eSchristos #define YYerror 256
181*c42dbd0eSchristos #define YYUNDEF 257
182*c42dbd0eSchristos #define A 258
183*c42dbd0eSchristos #define X 259
184*c42dbd0eSchristos #define B 260
185*c42dbd0eSchristos #define C 261
186*c42dbd0eSchristos #define D 262
187*c42dbd0eSchristos #define E 263
188*c42dbd0eSchristos #define H 264
189*c42dbd0eSchristos #define L 265
190*c42dbd0eSchristos #define AX 266
191*c42dbd0eSchristos #define BC 267
192*c42dbd0eSchristos #define DE 268
193*c42dbd0eSchristos #define HL 269
194*c42dbd0eSchristos #define SPL 270
195*c42dbd0eSchristos #define SPH 271
196*c42dbd0eSchristos #define PSW 272
197*c42dbd0eSchristos #define CS 273
198*c42dbd0eSchristos #define ES 274
199*c42dbd0eSchristos #define PMC 275
200*c42dbd0eSchristos #define MEM 276
201*c42dbd0eSchristos #define FLAG 277
202*c42dbd0eSchristos #define SP 278
203*c42dbd0eSchristos #define CY 279
204*c42dbd0eSchristos #define RB0 280
205*c42dbd0eSchristos #define RB1 281
206*c42dbd0eSchristos #define RB2 282
207*c42dbd0eSchristos #define RB3 283
208*c42dbd0eSchristos #define EXPR 284
209*c42dbd0eSchristos #define UNKNOWN_OPCODE 285
210*c42dbd0eSchristos #define IS_OPCODE 286
211*c42dbd0eSchristos #define DOT_S 287
212*c42dbd0eSchristos #define DOT_B 288
213*c42dbd0eSchristos #define DOT_W 289
214*c42dbd0eSchristos #define DOT_L 290
215*c42dbd0eSchristos #define DOT_A 291
216*c42dbd0eSchristos #define DOT_UB 292
217*c42dbd0eSchristos #define DOT_UW 293
218*c42dbd0eSchristos #define ADD 294
219*c42dbd0eSchristos #define ADDC 295
220*c42dbd0eSchristos #define ADDW 296
221*c42dbd0eSchristos #define AND_ 297
222*c42dbd0eSchristos #define AND1 298
223*c42dbd0eSchristos #define BF 299
224*c42dbd0eSchristos #define BH 300
225*c42dbd0eSchristos #define BNC 301
226*c42dbd0eSchristos #define BNH 302
227*c42dbd0eSchristos #define BNZ 303
228*c42dbd0eSchristos #define BR 304
229*c42dbd0eSchristos #define BRK 305
230*c42dbd0eSchristos #define BRK1 306
231*c42dbd0eSchristos #define BT 307
232*c42dbd0eSchristos #define BTCLR 308
233*c42dbd0eSchristos #define BZ 309
234*c42dbd0eSchristos #define CALL 310
235*c42dbd0eSchristos #define CALLT 311
236*c42dbd0eSchristos #define CLR1 312
237*c42dbd0eSchristos #define CLRB 313
238*c42dbd0eSchristos #define CLRW 314
239*c42dbd0eSchristos #define CMP 315
240*c42dbd0eSchristos #define CMP0 316
241*c42dbd0eSchristos #define CMPS 317
242*c42dbd0eSchristos #define CMPW 318
243*c42dbd0eSchristos #define DEC 319
244*c42dbd0eSchristos #define DECW 320
245*c42dbd0eSchristos #define DI 321
246*c42dbd0eSchristos #define DIVHU 322
247*c42dbd0eSchristos #define DIVWU 323
248*c42dbd0eSchristos #define EI 324
249*c42dbd0eSchristos #define HALT 325
250*c42dbd0eSchristos #define INC 326
251*c42dbd0eSchristos #define INCW 327
252*c42dbd0eSchristos #define MACH 328
253*c42dbd0eSchristos #define MACHU 329
254*c42dbd0eSchristos #define MOV 330
255*c42dbd0eSchristos #define MOV1 331
256*c42dbd0eSchristos #define MOVS 332
257*c42dbd0eSchristos #define MOVW 333
258*c42dbd0eSchristos #define MULH 334
259*c42dbd0eSchristos #define MULHU 335
260*c42dbd0eSchristos #define MULU 336
261*c42dbd0eSchristos #define NOP 337
262*c42dbd0eSchristos #define NOT1 338
263*c42dbd0eSchristos #define ONEB 339
264*c42dbd0eSchristos #define ONEW 340
265*c42dbd0eSchristos #define OR 341
266*c42dbd0eSchristos #define OR1 342
267*c42dbd0eSchristos #define POP 343
268*c42dbd0eSchristos #define PUSH 344
269*c42dbd0eSchristos #define RET 345
270*c42dbd0eSchristos #define RETI 346
271*c42dbd0eSchristos #define RETB 347
272*c42dbd0eSchristos #define ROL 348
273*c42dbd0eSchristos #define ROLC 349
274*c42dbd0eSchristos #define ROLWC 350
275*c42dbd0eSchristos #define ROR 351
276*c42dbd0eSchristos #define RORC 352
277*c42dbd0eSchristos #define SAR 353
278*c42dbd0eSchristos #define SARW 354
279*c42dbd0eSchristos #define SEL 355
280*c42dbd0eSchristos #define SET1 356
281*c42dbd0eSchristos #define SHL 357
282*c42dbd0eSchristos #define SHLW 358
283*c42dbd0eSchristos #define SHR 359
284*c42dbd0eSchristos #define SHRW 360
285*c42dbd0eSchristos #define SKC 361
286*c42dbd0eSchristos #define SKH 362
287*c42dbd0eSchristos #define SKNC 363
288*c42dbd0eSchristos #define SKNH 364
289*c42dbd0eSchristos #define SKNZ 365
290*c42dbd0eSchristos #define SKZ 366
291*c42dbd0eSchristos #define STOP 367
292*c42dbd0eSchristos #define SUB 368
293*c42dbd0eSchristos #define SUBC 369
294*c42dbd0eSchristos #define SUBW 370
295*c42dbd0eSchristos #define XCH 371
296*c42dbd0eSchristos #define XCHW 372
297*c42dbd0eSchristos #define XOR 373
298*c42dbd0eSchristos #define XOR1 374
299*c42dbd0eSchristos 
300*c42dbd0eSchristos /* Value type.  */
301*c42dbd0eSchristos #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
302*c42dbd0eSchristos union YYSTYPE
303*c42dbd0eSchristos {
304*c42dbd0eSchristos #line 144 "./config/rl78-parse.y"
305*c42dbd0eSchristos 
306*c42dbd0eSchristos   int regno;
307*c42dbd0eSchristos   expressionS exp;
308*c42dbd0eSchristos 
309*c42dbd0eSchristos #line 310 "config/rl78-parse.h"
310*c42dbd0eSchristos 
311*c42dbd0eSchristos };
312*c42dbd0eSchristos typedef union YYSTYPE YYSTYPE;
313*c42dbd0eSchristos # define YYSTYPE_IS_TRIVIAL 1
314*c42dbd0eSchristos # define YYSTYPE_IS_DECLARED 1
315*c42dbd0eSchristos #endif
316*c42dbd0eSchristos 
317*c42dbd0eSchristos 
318*c42dbd0eSchristos extern YYSTYPE rl78_lval;
319*c42dbd0eSchristos 
320*c42dbd0eSchristos 
321*c42dbd0eSchristos int rl78_parse (void);
322*c42dbd0eSchristos 
323*c42dbd0eSchristos 
324*c42dbd0eSchristos #endif /* !YY_RL78_CONFIG_RL_PARSE_H_INCLUDED  */
325