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