/* 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, VOLATILE = 286, TO = 287, DOTDOTDOT = 288, NULL_TOK = 289, UNDEF = 290, INTERNAL = 291, LINKONCE = 292, WEAK = 293, APPENDING = 294, DLLIMPORT = 295, DLLEXPORT = 296, EXTERN_WEAK = 297, OPAQUE = 298, EXTERNAL = 299, TARGET = 300, TRIPLE = 301, ALIGN = 302, DEPLIBS = 303, CALL = 304, TAIL = 305, ASM_TOK = 306, MODULE = 307, SIDEEFFECT = 308, CC_TOK = 309, CCC_TOK = 310, FASTCC_TOK = 311, COLDCC_TOK = 312, X86_STDCALLCC_TOK = 313, X86_FASTCALLCC_TOK = 314, DATALAYOUT = 315, RET = 316, BR = 317, SWITCH = 318, INVOKE = 319, UNWIND = 320, UNREACHABLE = 321, ADD = 322, SUB = 323, MUL = 324, UDIV = 325, SDIV = 326, FDIV = 327, UREM = 328, SREM = 329, FREM = 330, AND = 331, OR = 332, XOR = 333, SHL = 334, LSHR = 335, ASHR = 336, ICMP = 337, FCMP = 338, EQ = 339, NE = 340, SLT = 341, SGT = 342, SLE = 343, SGE = 344, ULT = 345, UGT = 346, ULE = 347, UGE = 348, OEQ = 349, ONE = 350, OLT = 351, OGT = 352, OLE = 353, OGE = 354, ORD = 355, UNO = 356, UEQ = 357, UNE = 358, MALLOC = 359, ALLOCA = 360, FREE = 361, LOAD = 362, STORE = 363, GETELEMENTPTR = 364, TRUNC = 365, ZEXT = 366, SEXT = 367, FPTRUNC = 368, FPEXT = 369, BITCAST = 370, UITOFP = 371, SITOFP = 372, FPTOUI = 373, FPTOSI = 374, INTTOPTR = 375, PTRTOINT = 376, PHI_TOK = 377, SELECT = 378, VAARG = 379, EXTRACTELEMENT = 380, INSERTELEMENT = 381, SHUFFLEVECTOR = 382, NORETURN = 383, INREG = 384, SRET = 385, NOUNWIND = 386, DEFAULT = 387, HIDDEN = 388 }; #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 VOLATILE 286 #define TO 287 #define DOTDOTDOT 288 #define NULL_TOK 289 #define UNDEF 290 #define INTERNAL 291 #define LINKONCE 292 #define WEAK 293 #define APPENDING 294 #define DLLIMPORT 295 #define DLLEXPORT 296 #define EXTERN_WEAK 297 #define OPAQUE 298 #define EXTERNAL 299 #define TARGET 300 #define TRIPLE 301 #define ALIGN 302 #define DEPLIBS 303 #define CALL 304 #define TAIL 305 #define ASM_TOK 306 #define MODULE 307 #define SIDEEFFECT 308 #define CC_TOK 309 #define CCC_TOK 310 #define FASTCC_TOK 311 #define COLDCC_TOK 312 #define X86_STDCALLCC_TOK 313 #define X86_FASTCALLCC_TOK 314 #define DATALAYOUT 315 #define RET 316 #define BR 317 #define SWITCH 318 #define INVOKE 319 #define UNWIND 320 #define UNREACHABLE 321 #define ADD 322 #define SUB 323 #define MUL 324 #define UDIV 325 #define SDIV 326 #define FDIV 327 #define UREM 328 #define SREM 329 #define FREM 330 #define AND 331 #define OR 332 #define XOR 333 #define SHL 334 #define LSHR 335 #define ASHR 336 #define ICMP 337 #define FCMP 338 #define EQ 339 #define NE 340 #define SLT 341 #define SGT 342 #define SLE 343 #define SGE 344 #define ULT 345 #define UGT 346 #define ULE 347 #define UGE 348 #define OEQ 349 #define ONE 350 #define OLT 351 #define OGT 352 #define OLE 353 #define OGE 354 #define ORD 355 #define UNO 356 #define UEQ 357 #define UNE 358 #define MALLOC 359 #define ALLOCA 360 #define FREE 361 #define LOAD 362 #define STORE 363 #define GETELEMENTPTR 364 #define TRUNC 365 #define ZEXT 366 #define SEXT 367 #define FPTRUNC 368 #define FPEXT 369 #define BITCAST 370 #define UITOFP 371 #define SITOFP 372 #define FPTOUI 373 #define FPTOSI 374 #define INTTOPTR 375 #define PTRTOINT 376 #define PHI_TOK 377 #define SELECT 378 #define VAARG 379 #define EXTRACTELEMENT 380 #define INSERTELEMENT 381 #define SHUFFLEVECTOR 382 #define NORETURN 383 #define INREG 384 #define SRET 385 #define NOUNWIND 386 #define DEFAULT 387 #define HIDDEN 388 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 937 "/proj/llvm/llvm-1/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 351 "llvmAsmParser.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif extern YYSTYPE llvmAsmlval;