/* 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, ESAPINTVAL = 260, EUAPINTVAL = 261, LOCALVAL_ID = 262, GLOBALVAL_ID = 263, FPVAL = 264, VOID = 265, INTTYPE = 266, FLOAT = 267, DOUBLE = 268, LABEL = 269, TYPE = 270, LOCALVAR = 271, GLOBALVAR = 272, LABELSTR = 273, STRINGCONSTANT = 274, ATSTRINGCONSTANT = 275, ZEROINITIALIZER = 276, TRUETOK = 277, FALSETOK = 278, BEGINTOK = 279, ENDTOK = 280, DECLARE = 281, DEFINE = 282, GLOBAL = 283, CONSTANT = 284, SECTION = 285, ALIAS = 286, VOLATILE = 287, THREAD_LOCAL = 288, TO = 289, DOTDOTDOT = 290, NULL_TOK = 291, UNDEF = 292, INTERNAL = 293, LINKONCE = 294, WEAK = 295, APPENDING = 296, DLLIMPORT = 297, DLLEXPORT = 298, EXTERN_WEAK = 299, OPAQUE = 300, EXTERNAL = 301, TARGET = 302, TRIPLE = 303, ALIGN = 304, DEPLIBS = 305, CALL = 306, TAIL = 307, ASM_TOK = 308, MODULE = 309, SIDEEFFECT = 310, CC_TOK = 311, CCC_TOK = 312, FASTCC_TOK = 313, COLDCC_TOK = 314, X86_STDCALLCC_TOK = 315, X86_FASTCALLCC_TOK = 316, DATALAYOUT = 317, RET = 318, BR = 319, SWITCH = 320, INVOKE = 321, UNWIND = 322, UNREACHABLE = 323, ADD = 324, SUB = 325, MUL = 326, UDIV = 327, SDIV = 328, FDIV = 329, UREM = 330, SREM = 331, FREM = 332, AND = 333, OR = 334, XOR = 335, SHL = 336, LSHR = 337, ASHR = 338, ICMP = 339, FCMP = 340, EQ = 341, NE = 342, SLT = 343, SGT = 344, SLE = 345, SGE = 346, ULT = 347, UGT = 348, ULE = 349, UGE = 350, OEQ = 351, ONE = 352, OLT = 353, OGT = 354, OLE = 355, OGE = 356, ORD = 357, UNO = 358, UEQ = 359, UNE = 360, MALLOC = 361, ALLOCA = 362, FREE = 363, LOAD = 364, STORE = 365, GETELEMENTPTR = 366, TRUNC = 367, ZEXT = 368, SEXT = 369, FPTRUNC = 370, FPEXT = 371, BITCAST = 372, UITOFP = 373, SITOFP = 374, FPTOUI = 375, FPTOSI = 376, INTTOPTR = 377, PTRTOINT = 378, PHI_TOK = 379, SELECT = 380, VAARG = 381, EXTRACTELEMENT = 382, INSERTELEMENT = 383, SHUFFLEVECTOR = 384, NORETURN = 385, INREG = 386, SRET = 387, NOUNWIND = 388, DEFAULT = 389, HIDDEN = 390 }; #endif /* Tokens. */ #define ESINT64VAL 258 #define EUINT64VAL 259 #define ESAPINTVAL 260 #define EUAPINTVAL 261 #define LOCALVAL_ID 262 #define GLOBALVAL_ID 263 #define FPVAL 264 #define VOID 265 #define INTTYPE 266 #define FLOAT 267 #define DOUBLE 268 #define LABEL 269 #define TYPE 270 #define LOCALVAR 271 #define GLOBALVAR 272 #define LABELSTR 273 #define STRINGCONSTANT 274 #define ATSTRINGCONSTANT 275 #define ZEROINITIALIZER 276 #define TRUETOK 277 #define FALSETOK 278 #define BEGINTOK 279 #define ENDTOK 280 #define DECLARE 281 #define DEFINE 282 #define GLOBAL 283 #define CONSTANT 284 #define SECTION 285 #define ALIAS 286 #define VOLATILE 287 #define THREAD_LOCAL 288 #define TO 289 #define DOTDOTDOT 290 #define NULL_TOK 291 #define UNDEF 292 #define INTERNAL 293 #define LINKONCE 294 #define WEAK 295 #define APPENDING 296 #define DLLIMPORT 297 #define DLLEXPORT 298 #define EXTERN_WEAK 299 #define OPAQUE 300 #define EXTERNAL 301 #define TARGET 302 #define TRIPLE 303 #define ALIGN 304 #define DEPLIBS 305 #define CALL 306 #define TAIL 307 #define ASM_TOK 308 #define MODULE 309 #define SIDEEFFECT 310 #define CC_TOK 311 #define CCC_TOK 312 #define FASTCC_TOK 313 #define COLDCC_TOK 314 #define X86_STDCALLCC_TOK 315 #define X86_FASTCALLCC_TOK 316 #define DATALAYOUT 317 #define RET 318 #define BR 319 #define SWITCH 320 #define INVOKE 321 #define UNWIND 322 #define UNREACHABLE 323 #define ADD 324 #define SUB 325 #define MUL 326 #define UDIV 327 #define SDIV 328 #define FDIV 329 #define UREM 330 #define SREM 331 #define FREM 332 #define AND 333 #define OR 334 #define XOR 335 #define SHL 336 #define LSHR 337 #define ASHR 338 #define ICMP 339 #define FCMP 340 #define EQ 341 #define NE 342 #define SLT 343 #define SGT 344 #define SLE 345 #define SGE 346 #define ULT 347 #define UGT 348 #define ULE 349 #define UGE 350 #define OEQ 351 #define ONE 352 #define OLT 353 #define OGT 354 #define OLE 355 #define OGE 356 #define ORD 357 #define UNO 358 #define UEQ 359 #define UNE 360 #define MALLOC 361 #define ALLOCA 362 #define FREE 363 #define LOAD 364 #define STORE 365 #define GETELEMENTPTR 366 #define TRUNC 367 #define ZEXT 368 #define SEXT 369 #define FPTRUNC 370 #define FPEXT 371 #define BITCAST 372 #define UITOFP 373 #define SITOFP 374 #define FPTOUI 375 #define FPTOSI 376 #define INTTOPTR 377 #define PTRTOINT 378 #define PHI_TOK 379 #define SELECT 380 #define VAARG 381 #define EXTRACTELEMENT 382 #define INSERTELEMENT 383 #define SHUFFLEVECTOR 384 #define NORETURN 385 #define INREG 386 #define SRET 387 #define NOUNWIND 388 #define DEFAULT 389 #define HIDDEN 390 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 955 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y" typedef union YYSTYPE { llvm::Module *ModuleVal; llvm::Function *FunctionVal; llvm::BasicBlock *BasicBlockVal; llvm::TerminatorInst *TermInstVal; llvm::Instruction *InstVal; llvm::Constant *ConstVal; const llvm::Type *PrimType; std::list *TypeList; llvm::PATypeHolder *TypeVal; llvm::Value *ValueVal; std::vector *ValueList; llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; llvm::ValueRefList *ValueRefList; // Represent the RHS of PHI node std::list > *PHIList; std::vector > *JumpTable; std::vector *ConstVector; llvm::GlobalValue::LinkageTypes Linkage; llvm::GlobalValue::VisibilityTypes Visibility; uint16_t ParamAttrs; llvm::APInt *APIntVal; 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::ICmpInst::Predicate IPredicate; llvm::FCmpInst::Predicate FPredicate; } YYSTYPE; /* Line 1447 of yacc.c. */ #line 355 "llvmAsmParser.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif extern YYSTYPE llvmAsmlval;