/* 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, LOCALVAL_ID = 260, GLOBALVAL_ID = 261, FPVAL = 262, VOID = 263, INTTYPE = 264, FLOAT = 265, DOUBLE = 266, LABEL = 267, TYPE = 268, LOCALVAR = 269, GLOBALVAR = 270, LABELSTR = 271, STRINGCONSTANT = 272, ATSTRINGCONSTANT = 273, IMPLEMENTATION = 274, ZEROINITIALIZER = 275, TRUETOK = 276, FALSETOK = 277, BEGINTOK = 278, ENDTOK = 279, DECLARE = 280, DEFINE = 281, GLOBAL = 282, CONSTANT = 283, SECTION = 284, VOLATILE = 285, TO = 286, DOTDOTDOT = 287, NULL_TOK = 288, UNDEF = 289, INTERNAL = 290, LINKONCE = 291, WEAK = 292, APPENDING = 293, DLLIMPORT = 294, DLLEXPORT = 295, EXTERN_WEAK = 296, OPAQUE = 297, EXTERNAL = 298, TARGET = 299, TRIPLE = 300, ALIGN = 301, DEPLIBS = 302, CALL = 303, TAIL = 304, ASM_TOK = 305, MODULE = 306, SIDEEFFECT = 307, CC_TOK = 308, CCC_TOK = 309, CSRETCC_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, ICMP = 334, FCMP = 335, EQ = 336, NE = 337, SLT = 338, SGT = 339, SLE = 340, SGE = 341, ULT = 342, UGT = 343, ULE = 344, UGE = 345, OEQ = 346, ONE = 347, OLT = 348, OGT = 349, OLE = 350, OGE = 351, ORD = 352, UNO = 353, UEQ = 354, UNE = 355, MALLOC = 356, ALLOCA = 357, FREE = 358, LOAD = 359, STORE = 360, GETELEMENTPTR = 361, TRUNC = 362, ZEXT = 363, SEXT = 364, FPTRUNC = 365, FPEXT = 366, BITCAST = 367, UITOFP = 368, SITOFP = 369, FPTOUI = 370, FPTOSI = 371, INTTOPTR = 372, PTRTOINT = 373, PHI_TOK = 374, SELECT = 375, SHL = 376, LSHR = 377, ASHR = 378, VAARG = 379, EXTRACTELEMENT = 380, INSERTELEMENT = 381, SHUFFLEVECTOR = 382, NORETURN = 383, DEFAULT = 384, HIDDEN = 385 }; #endif /* Tokens. */ #define ESINT64VAL 258 #define EUINT64VAL 259 #define LOCALVAL_ID 260 #define GLOBALVAL_ID 261 #define FPVAL 262 #define VOID 263 #define INTTYPE 264 #define FLOAT 265 #define DOUBLE 266 #define LABEL 267 #define TYPE 268 #define LOCALVAR 269 #define GLOBALVAR 270 #define LABELSTR 271 #define STRINGCONSTANT 272 #define ATSTRINGCONSTANT 273 #define IMPLEMENTATION 274 #define ZEROINITIALIZER 275 #define TRUETOK 276 #define FALSETOK 277 #define BEGINTOK 278 #define ENDTOK 279 #define DECLARE 280 #define DEFINE 281 #define GLOBAL 282 #define CONSTANT 283 #define SECTION 284 #define VOLATILE 285 #define TO 286 #define DOTDOTDOT 287 #define NULL_TOK 288 #define UNDEF 289 #define INTERNAL 290 #define LINKONCE 291 #define WEAK 292 #define APPENDING 293 #define DLLIMPORT 294 #define DLLEXPORT 295 #define EXTERN_WEAK 296 #define OPAQUE 297 #define EXTERNAL 298 #define TARGET 299 #define TRIPLE 300 #define ALIGN 301 #define DEPLIBS 302 #define CALL 303 #define TAIL 304 #define ASM_TOK 305 #define MODULE 306 #define SIDEEFFECT 307 #define CC_TOK 308 #define CCC_TOK 309 #define CSRETCC_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 ICMP 334 #define FCMP 335 #define EQ 336 #define NE 337 #define SLT 338 #define SGT 339 #define SLE 340 #define SGE 341 #define ULT 342 #define UGT 343 #define ULE 344 #define UGE 345 #define OEQ 346 #define ONE 347 #define OLT 348 #define OGT 349 #define OLE 350 #define OGE 351 #define ORD 352 #define UNO 353 #define UEQ 354 #define UNE 355 #define MALLOC 356 #define ALLOCA 357 #define FREE 358 #define LOAD 359 #define STORE 360 #define GETELEMENTPTR 361 #define TRUNC 362 #define ZEXT 363 #define SEXT 364 #define FPTRUNC 365 #define FPEXT 366 #define BITCAST 367 #define UITOFP 368 #define SITOFP 369 #define FPTOUI 370 #define FPTOSI 371 #define INTTOPTR 372 #define PTRTOINT 373 #define PHI_TOK 374 #define SELECT 375 #define SHL 376 #define LSHR 377 #define ASHR 378 #define VAARG 379 #define EXTRACTELEMENT 380 #define INSERTELEMENT 381 #define SHUFFLEVECTOR 382 #define NORETURN 383 #define DEFAULT 384 #define HIDDEN 385 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 885 "/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; llvm::FunctionType::ParameterAttributes ParamAttrs; 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 344 "llvmAsmParser.tab.h" # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif extern YYSTYPE llvmAsmlval;