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