tizen 2.4 release
[external/binutils.git] / gas / bfin-parse.h
1 /* A Bison parser, made by GNU Bison 2.3.  */
2
3 /* Skeleton interface for Bison's Yacc-like parsers in C
4
5    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6    Free Software Foundation, Inc.
7
8    This program is free software; you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation; either version 2, or (at your option)
11    any later version.
12
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17
18    You should have received a copy of the GNU General Public License
19    along with this program; if not, write to the Free Software
20    Foundation, Inc., 51 Franklin Street, Fifth Floor,
21    Boston, MA 02110-1301, USA.  */
22
23 /* As a special exception, you may create a larger work that contains
24    part or all of the Bison parser skeleton and distribute that work
25    under terms of your choice, so long as that work isn't itself a
26    parser generator using the skeleton or a modified version thereof
27    as a parser skeleton.  Alternatively, if you modify or redistribute
28    the parser skeleton itself, you may (at your option) remove this
29    special exception, which will cause the skeleton and the resulting
30    Bison output files to be licensed under the GNU General Public
31    License without this special exception.
32
33    This special exception was added by the Free Software Foundation in
34    version 2.2 of Bison.  */
35
36 /* Tokens.  */
37 #ifndef YYTOKENTYPE
38 # define YYTOKENTYPE
39    /* Put the tokens into the symbol table, so that GDB and other debuggers
40       know about them.  */
41    enum yytokentype {
42      BYTEOP16P = 258,
43      BYTEOP16M = 259,
44      BYTEOP1P = 260,
45      BYTEOP2P = 261,
46      BYTEOP3P = 262,
47      BYTEUNPACK = 263,
48      BYTEPACK = 264,
49      PACK = 265,
50      SAA = 266,
51      ALIGN8 = 267,
52      ALIGN16 = 268,
53      ALIGN24 = 269,
54      VIT_MAX = 270,
55      EXTRACT = 271,
56      DEPOSIT = 272,
57      EXPADJ = 273,
58      SEARCH = 274,
59      ONES = 275,
60      SIGN = 276,
61      SIGNBITS = 277,
62      LINK = 278,
63      UNLINK = 279,
64      REG = 280,
65      PC = 281,
66      CCREG = 282,
67      BYTE_DREG = 283,
68      REG_A_DOUBLE_ZERO = 284,
69      REG_A_DOUBLE_ONE = 285,
70      A_ZERO_DOT_L = 286,
71      A_ZERO_DOT_H = 287,
72      A_ONE_DOT_L = 288,
73      A_ONE_DOT_H = 289,
74      HALF_REG = 290,
75      NOP = 291,
76      RTI = 292,
77      RTS = 293,
78      RTX = 294,
79      RTN = 295,
80      RTE = 296,
81      HLT = 297,
82      IDLE = 298,
83      STI = 299,
84      CLI = 300,
85      CSYNC = 301,
86      SSYNC = 302,
87      EMUEXCPT = 303,
88      RAISE = 304,
89      EXCPT = 305,
90      LSETUP = 306,
91      LOOP = 307,
92      LOOP_BEGIN = 308,
93      LOOP_END = 309,
94      DISALGNEXCPT = 310,
95      JUMP = 311,
96      JUMP_DOT_S = 312,
97      JUMP_DOT_L = 313,
98      CALL = 314,
99      ABORT = 315,
100      NOT = 316,
101      TILDA = 317,
102      BANG = 318,
103      AMPERSAND = 319,
104      BAR = 320,
105      PERCENT = 321,
106      CARET = 322,
107      BXOR = 323,
108      MINUS = 324,
109      PLUS = 325,
110      STAR = 326,
111      SLASH = 327,
112      NEG = 328,
113      MIN = 329,
114      MAX = 330,
115      ABS = 331,
116      DOUBLE_BAR = 332,
117      _PLUS_BAR_PLUS = 333,
118      _PLUS_BAR_MINUS = 334,
119      _MINUS_BAR_PLUS = 335,
120      _MINUS_BAR_MINUS = 336,
121      _MINUS_MINUS = 337,
122      _PLUS_PLUS = 338,
123      SHIFT = 339,
124      LSHIFT = 340,
125      ASHIFT = 341,
126      BXORSHIFT = 342,
127      _GREATER_GREATER_GREATER_THAN_ASSIGN = 343,
128      ROT = 344,
129      LESS_LESS = 345,
130      GREATER_GREATER = 346,
131      _GREATER_GREATER_GREATER = 347,
132      _LESS_LESS_ASSIGN = 348,
133      _GREATER_GREATER_ASSIGN = 349,
134      DIVS = 350,
135      DIVQ = 351,
136      ASSIGN = 352,
137      _STAR_ASSIGN = 353,
138      _BAR_ASSIGN = 354,
139      _CARET_ASSIGN = 355,
140      _AMPERSAND_ASSIGN = 356,
141      _MINUS_ASSIGN = 357,
142      _PLUS_ASSIGN = 358,
143      _ASSIGN_BANG = 359,
144      _LESS_THAN_ASSIGN = 360,
145      _ASSIGN_ASSIGN = 361,
146      GE = 362,
147      LT = 363,
148      LE = 364,
149      GT = 365,
150      LESS_THAN = 366,
151      FLUSHINV = 367,
152      FLUSH = 368,
153      IFLUSH = 369,
154      PREFETCH = 370,
155      PRNT = 371,
156      OUTC = 372,
157      WHATREG = 373,
158      TESTSET = 374,
159      ASL = 375,
160      ASR = 376,
161      B = 377,
162      W = 378,
163      NS = 379,
164      S = 380,
165      CO = 381,
166      SCO = 382,
167      TH = 383,
168      TL = 384,
169      BP = 385,
170      BREV = 386,
171      X = 387,
172      Z = 388,
173      M = 389,
174      MMOD = 390,
175      R = 391,
176      RND = 392,
177      RNDL = 393,
178      RNDH = 394,
179      RND12 = 395,
180      RND20 = 396,
181      V = 397,
182      LO = 398,
183      HI = 399,
184      BITTGL = 400,
185      BITCLR = 401,
186      BITSET = 402,
187      BITTST = 403,
188      BITMUX = 404,
189      DBGAL = 405,
190      DBGAH = 406,
191      DBGHALT = 407,
192      DBG = 408,
193      DBGA = 409,
194      DBGCMPLX = 410,
195      IF = 411,
196      COMMA = 412,
197      BY = 413,
198      COLON = 414,
199      SEMICOLON = 415,
200      RPAREN = 416,
201      LPAREN = 417,
202      LBRACK = 418,
203      RBRACK = 419,
204      STATUS_REG = 420,
205      MNOP = 421,
206      SYMBOL = 422,
207      NUMBER = 423,
208      GOT = 424,
209      GOT17M4 = 425,
210      FUNCDESC_GOT17M4 = 426,
211      AT = 427,
212      PLTPC = 428
213    };
214 #endif
215 /* Tokens.  */
216 #define BYTEOP16P 258
217 #define BYTEOP16M 259
218 #define BYTEOP1P 260
219 #define BYTEOP2P 261
220 #define BYTEOP3P 262
221 #define BYTEUNPACK 263
222 #define BYTEPACK 264
223 #define PACK 265
224 #define SAA 266
225 #define ALIGN8 267
226 #define ALIGN16 268
227 #define ALIGN24 269
228 #define VIT_MAX 270
229 #define EXTRACT 271
230 #define DEPOSIT 272
231 #define EXPADJ 273
232 #define SEARCH 274
233 #define ONES 275
234 #define SIGN 276
235 #define SIGNBITS 277
236 #define LINK 278
237 #define UNLINK 279
238 #define REG 280
239 #define PC 281
240 #define CCREG 282
241 #define BYTE_DREG 283
242 #define REG_A_DOUBLE_ZERO 284
243 #define REG_A_DOUBLE_ONE 285
244 #define A_ZERO_DOT_L 286
245 #define A_ZERO_DOT_H 287
246 #define A_ONE_DOT_L 288
247 #define A_ONE_DOT_H 289
248 #define HALF_REG 290
249 #define NOP 291
250 #define RTI 292
251 #define RTS 293
252 #define RTX 294
253 #define RTN 295
254 #define RTE 296
255 #define HLT 297
256 #define IDLE 298
257 #define STI 299
258 #define CLI 300
259 #define CSYNC 301
260 #define SSYNC 302
261 #define EMUEXCPT 303
262 #define RAISE 304
263 #define EXCPT 305
264 #define LSETUP 306
265 #define LOOP 307
266 #define LOOP_BEGIN 308
267 #define LOOP_END 309
268 #define DISALGNEXCPT 310
269 #define JUMP 311
270 #define JUMP_DOT_S 312
271 #define JUMP_DOT_L 313
272 #define CALL 314
273 #define ABORT 315
274 #define NOT 316
275 #define TILDA 317
276 #define BANG 318
277 #define AMPERSAND 319
278 #define BAR 320
279 #define PERCENT 321
280 #define CARET 322
281 #define BXOR 323
282 #define MINUS 324
283 #define PLUS 325
284 #define STAR 326
285 #define SLASH 327
286 #define NEG 328
287 #define MIN 329
288 #define MAX 330
289 #define ABS 331
290 #define DOUBLE_BAR 332
291 #define _PLUS_BAR_PLUS 333
292 #define _PLUS_BAR_MINUS 334
293 #define _MINUS_BAR_PLUS 335
294 #define _MINUS_BAR_MINUS 336
295 #define _MINUS_MINUS 337
296 #define _PLUS_PLUS 338
297 #define SHIFT 339
298 #define LSHIFT 340
299 #define ASHIFT 341
300 #define BXORSHIFT 342
301 #define _GREATER_GREATER_GREATER_THAN_ASSIGN 343
302 #define ROT 344
303 #define LESS_LESS 345
304 #define GREATER_GREATER 346
305 #define _GREATER_GREATER_GREATER 347
306 #define _LESS_LESS_ASSIGN 348
307 #define _GREATER_GREATER_ASSIGN 349
308 #define DIVS 350
309 #define DIVQ 351
310 #define ASSIGN 352
311 #define _STAR_ASSIGN 353
312 #define _BAR_ASSIGN 354
313 #define _CARET_ASSIGN 355
314 #define _AMPERSAND_ASSIGN 356
315 #define _MINUS_ASSIGN 357
316 #define _PLUS_ASSIGN 358
317 #define _ASSIGN_BANG 359
318 #define _LESS_THAN_ASSIGN 360
319 #define _ASSIGN_ASSIGN 361
320 #define GE 362
321 #define LT 363
322 #define LE 364
323 #define GT 365
324 #define LESS_THAN 366
325 #define FLUSHINV 367
326 #define FLUSH 368
327 #define IFLUSH 369
328 #define PREFETCH 370
329 #define PRNT 371
330 #define OUTC 372
331 #define WHATREG 373
332 #define TESTSET 374
333 #define ASL 375
334 #define ASR 376
335 #define B 377
336 #define W 378
337 #define NS 379
338 #define S 380
339 #define CO 381
340 #define SCO 382
341 #define TH 383
342 #define TL 384
343 #define BP 385
344 #define BREV 386
345 #define X 387
346 #define Z 388
347 #define M 389
348 #define MMOD 390
349 #define R 391
350 #define RND 392
351 #define RNDL 393
352 #define RNDH 394
353 #define RND12 395
354 #define RND20 396
355 #define V 397
356 #define LO 398
357 #define HI 399
358 #define BITTGL 400
359 #define BITCLR 401
360 #define BITSET 402
361 #define BITTST 403
362 #define BITMUX 404
363 #define DBGAL 405
364 #define DBGAH 406
365 #define DBGHALT 407
366 #define DBG 408
367 #define DBGA 409
368 #define DBGCMPLX 410
369 #define IF 411
370 #define COMMA 412
371 #define BY 413
372 #define COLON 414
373 #define SEMICOLON 415
374 #define RPAREN 416
375 #define LPAREN 417
376 #define LBRACK 418
377 #define RBRACK 419
378 #define STATUS_REG 420
379 #define MNOP 421
380 #define SYMBOL 422
381 #define NUMBER 423
382 #define GOT 424
383 #define GOT17M4 425
384 #define FUNCDESC_GOT17M4 426
385 #define AT 427
386 #define PLTPC 428
387
388
389
390
391 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
392 typedef union YYSTYPE
393 #line 446 "bfin-parse.y"
394 {
395   INSTR_T instr;
396   Expr_Node *expr;
397   SYMBOL_T symbol;
398   long value;
399   Register reg;
400   Macfunc macfunc;
401   struct { int r0; int s0; int x0; int aop; } modcodes;
402   struct { int r0; } r0;
403   Opt_mode mod;
404 }
405 /* Line 1529 of yacc.c.  */
406 #line 407 "bfin-parse.h"
407         YYSTYPE;
408 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
409 # define YYSTYPE_IS_DECLARED 1
410 # define YYSTYPE_IS_TRIVIAL 1
411 #endif
412
413 extern YYSTYPE yylval;
414