/* A Bison parser, made by GNU Bison 2.1. */ /* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /* As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. */ /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE /* Put the tokens into the symbol table, so that GDB and other debuggers know about them. */ enum yytokentype { ESINT64VAL = 258, EUINT64VAL = 259, SINTVAL = 260, UINTVAL = 261, FPVAL = 262, VOID = 263, BOOL = 264, SBYTE = 265, UBYTE = 266, SHORT = 267, USHORT = 268, INT = 269, UINT = 270, LONG = 271, ULONG = 272, FLOAT = 273, DOUBLE = 274, TYPE = 275, LABEL = 276, VAR_ID = 277, LABELSTR = 278, STRINGCONSTANT = 279, IMPLEMENTATION = 280, ZEROINITIALIZER = 281, TRUETOK = 282, FALSETOK = 283, BEGINTOK = 284, ENDTOK = 285, DECLARE = 286, GLOBAL = 287, CONSTANT = 288, SECTION = 289, VOLATILE = 290, TO = 291, DOTDOTDOT = 292, NULL_TOK = 293, UNDEF = 294, CONST = 295, INTERNAL = 296, LINKONCE = 297, WEAK = 298, APPENDING = 299, DLLIMPORT = 300, DLLEXPORT = 301, EXTERN_WEAK = 302, OPAQUE = 303, NOT = 304, EXTERNAL = 305, TARGET = 306, TRIPLE = 307, ENDIAN = 308, POINTERSIZE = 309, LITTLE = 310, BIG = 311, ALIGN = 312, DEPLIBS = 313, CALL = 314, TAIL = 315, ASM_TOK = 316, MODULE = 317, SIDEEFFECT = 318, CC_TOK = 319, CCC_TOK = 320, CSRETCC_TOK = 321, FASTCC_TOK = 322, COLDCC_TOK = 323, X86_STDCALLCC_TOK = 324, X86_FASTCALLCC_TOK = 325, DATALAYOUT = 326, RET = 327, BR = 328, SWITCH = 329, INVOKE = 330, UNWIND = 331, UNREACHABLE = 332, ADD = 333, SUB = 334, MUL = 335, UDIV = 336, SDIV = 337, FDIV = 338, UREM = 339, SREM = 340, FREM = 341, AND = 342, OR = 343, XOR = 344, SETLE = 345, SETGE = 346, SETLT = 347, SETGT = 348, SETEQ = 349, SETNE = 350, ICMP = 351, FCMP = 352, EQ = 353, NE = 354, SLT = 355, SGT = 356, SLE = 357, SGE = 358, ULT = 359, UGT = 360, ULE = 361, UGE = 362, OEQ = 363, ONE = 364, OLT = 365, OGT = 366, OLE = 367, OGE = 368, ORD = 369, UNO = 370, UEQ = 371, UNE = 372, MALLOC = 373, ALLOCA = 374, FREE = 375, LOAD = 376, STORE = 377, GETELEMENTPTR = 378, TRUNC = 379, ZEXT = 380, SEXT = 381, FPTRUNC = 382, FPEXT = 383, BITCAST = 384, UITOFP = 385, SITOFP = 386, FPTOUI = 387, FPTOSI = 388, INTTOPTR = 389, PTRTOINT = 390, PHI_TOK = 391, SELECT = 392, SHL = 393, LSHR = 394, ASHR = 395, VAARG = 396, EXTRACTELEMENT = 397, INSERTELEMENT = 398, SHUFFLEVECTOR = 399 }; #endif /* Tokens. */ #define ESINT64VAL 258 #define EUINT64VAL 259 #define SINTVAL 260 #define UINTVAL 261 #define FPVAL 262 #define VOID 263 #define BOOL 264 #define SBYTE 265 #define UBYTE 266 #define SHORT 267 #define USHORT 268 #define INT 269 #define UINT 270 #define LONG 271 #define ULONG 272 #define FLOAT 273 #define DOUBLE 274 #define TYPE 275 #define LABEL 276 #define VAR_ID 277 #define LABELSTR 278 #define STRINGCONSTANT 279 #define IMPLEMENTATION 280 #define ZEROINITIALIZER 281 #define TRUETOK 282 #define FALSETOK 283 #define BEGINTOK 284 #define ENDTOK 285 #define DECLARE 286 #define GLOBAL 287 #define CONSTANT 288 #define SECTION 289 #define VOLATILE 290 #define TO 291 #define DOTDOTDOT 292 #define NULL_TOK 293 #define UNDEF 294 #define CONST 295 #define INTERNAL 296 #define LINKONCE 297 #define WEAK 298 #define APPENDING 299 #define DLLIMPORT 300 #define DLLEXPORT 301 #define EXTERN_WEAK 302 #define OPAQUE 303 #define NOT 304 #define EXTERNAL 305 #define TARGET 306 #define TRIPLE 307 #define ENDIAN 308 #define POINTERSIZE 309 #define LITTLE 310 #define BIG 311 #define ALIGN 312 #define DEPLIBS 313 #define CALL 314 #define TAIL 315 #define ASM_TOK 316 #define MODULE 317 #define SIDEEFFECT 318 #define CC_TOK 319 #define CCC_TOK 320 #define CSRETCC_TOK 321 #define FASTCC_TOK 322 #define COLDCC_TOK 323 #define X86_STDCALLCC_TOK 324 #define X86_FASTCALLCC_TOK 325 #define DATALAYOUT 326 #define RET 327 #define BR 328 #define SWITCH 329 #define INVOKE 330 #define UNWIND 331 #define UNREACHABLE 332 #define ADD 333 #define SUB 334 #define MUL 335 #define UDIV 336 #define SDIV 337 #define FDIV 338 #define UREM 339 #define SREM 340 #define FREM 341 #define AND 342 #define OR 343 #define XOR 344 #define SETLE 345 #define SETGE 346 #define SETLT 347 #define SETGT 348 #define SETEQ 349 #define SETNE 350 #define ICMP 351 #define FCMP 352 #define EQ 353 #define NE 354 #define SLT 355 #define SGT 356 #define SLE 357 #define SGE 358 #define ULT 359 #define UGT 360 #define ULE 361 #define UGE 362 #define OEQ 363 #define ONE 364 #define OLT 365 #define OGT 366 #define OLE 367 #define OGE 368 #define ORD 369 #define UNO 370 #define UEQ 371 #define UNE 372 #define MALLOC 373 #define ALLOCA 374 #define FREE 375 #define LOAD 376 #define STORE 377 #define GETELEMENTPTR 378 #define TRUNC 379 #define ZEXT 380 #define SEXT 381 #define FPTRUNC 382 #define FPEXT 383 #define BITCAST 384 #define UITOFP 385 #define SITOFP 386 #define FPTOUI 387 #define FPTOSI 388 #define INTTOPTR 389 #define PTRTOINT 390 #define PHI_TOK 391 #define SELECT 392 #define SHL 393 #define LSHR 394 #define ASHR 395 #define VAARG 396 #define EXTRACTELEMENT 397 #define INSERTELEMENT 398 #define SHUFFLEVECTOR 399 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 855 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y" typedef union YYSTYPE { llvm::Module *ModuleVal; llvm::Function *FunctionVal; std::pair *ArgVal; llvm::BasicBlock *BasicBlockVal; llvm::TerminatorInst *TermInstVal; llvm::Instruction *InstVal; llvm::Constant *ConstVal; const llvm::Type *PrimType; llvm::PATypeHolder *TypeVal; llvm::Value *ValueVal; std::vector > *ArgList; std::vector *ValueList; std::list *TypeList; // Represent the RHS of PHI node std::list > *PHIList; std::vector > *JumpTable; std::vector *ConstVector; llvm::GlobalValue::LinkageTypes Linkage; int64_t SInt64Val; uint64_t UInt64Val; int SIntVal; unsigned UIntVal; double FPVal; bool BoolVal; char *StrVal; // This memory is strdup'd! llvm::ValID ValIDVal; // strdup'd memory maybe! llvm::Instruction::BinaryOps BinaryOpVal; llvm::Instruction::TermOps TermOpVal; llvm::Instruction::MemoryOps MemOpVal; llvm::Instruction::CastOps CastOpVal; llvm::Instruction::OtherOps OtherOpVal; llvm::Module::Endianness Endianness; llvm::ICmpInst::Predicate IPredicate; llvm::FCmpInst::Predicate FPredicate; } YYSTYPE; /* Line 1447 of yacc.c. */ #line 369 "llvmAsmParser.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif extern YYSTYPE llvmAsmlval;