-/* A Bison parser, made by GNU Bison 2.1. */
+/* A Bison parser, made by GNU Bison 2.3. */
-/* Skeleton parser for Yacc-like parsing with Bison,
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+/* Skeleton interface for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ 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
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. */
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
/* Tokens. */
#ifndef YYTOKENTYPE
enum yytokentype {
ESINT64VAL = 258,
EUINT64VAL = 259,
- SINTVAL = 260,
- UINTVAL = 261,
- FPVAL = 262,
- VOID = 263,
- BOOL = 264,
- INTTYPE = 265,
- FLOAT = 266,
- DOUBLE = 267,
- LABEL = 268,
- TYPE = 269,
- VAR_ID = 270,
- LABELSTR = 271,
- STRINGCONSTANT = 272,
- IMPLEMENTATION = 273,
- ZEROINITIALIZER = 274,
- TRUETOK = 275,
- FALSETOK = 276,
- BEGINTOK = 277,
- ENDTOK = 278,
- DECLARE = 279,
- DEFINE = 280,
- GLOBAL = 281,
- CONSTANT = 282,
- SECTION = 283,
- VOLATILE = 284,
- TO = 285,
- DOTDOTDOT = 286,
- NULL_TOK = 287,
- UNDEF = 288,
- INTERNAL = 289,
- LINKONCE = 290,
- WEAK = 291,
- APPENDING = 292,
- DLLIMPORT = 293,
- DLLEXPORT = 294,
- EXTERN_WEAK = 295,
- OPAQUE = 296,
- NOT = 297,
- EXTERNAL = 298,
- TARGET = 299,
- TRIPLE = 300,
- ENDIAN = 301,
- POINTERSIZE = 302,
- LITTLE = 303,
- BIG = 304,
- ALIGN = 305,
- DEPLIBS = 306,
- CALL = 307,
- TAIL = 308,
- ASM_TOK = 309,
- MODULE = 310,
- SIDEEFFECT = 311,
- CC_TOK = 312,
- CCC_TOK = 313,
- CSRETCC_TOK = 314,
- FASTCC_TOK = 315,
- COLDCC_TOK = 316,
- X86_STDCALLCC_TOK = 317,
- X86_FASTCALLCC_TOK = 318,
- DATALAYOUT = 319,
- RET = 320,
- BR = 321,
- SWITCH = 322,
- INVOKE = 323,
- UNWIND = 324,
- UNREACHABLE = 325,
- ADD = 326,
- SUB = 327,
- MUL = 328,
- UDIV = 329,
- SDIV = 330,
- FDIV = 331,
- UREM = 332,
- SREM = 333,
- FREM = 334,
- AND = 335,
- OR = 336,
- XOR = 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,
- SHL = 380,
- LSHR = 381,
- ASHR = 382,
- VAARG = 383,
- EXTRACTELEMENT = 384,
- INSERTELEMENT = 385,
- SHUFFLEVECTOR = 386,
- NORETURN = 387
+ ESAPINTVAL = 260,
+ EUAPINTVAL = 261,
+ LOCALVAL_ID = 262,
+ GLOBALVAL_ID = 263,
+ FPVAL = 264,
+ VOID = 265,
+ INTTYPE = 266,
+ FLOAT = 267,
+ DOUBLE = 268,
+ X86_FP80 = 269,
+ FP128 = 270,
+ PPC_FP128 = 271,
+ LABEL = 272,
+ TYPE = 273,
+ LOCALVAR = 274,
+ GLOBALVAR = 275,
+ LABELSTR = 276,
+ STRINGCONSTANT = 277,
+ ATSTRINGCONSTANT = 278,
+ PCTSTRINGCONSTANT = 279,
+ ZEROINITIALIZER = 280,
+ TRUETOK = 281,
+ FALSETOK = 282,
+ BEGINTOK = 283,
+ ENDTOK = 284,
+ DECLARE = 285,
+ DEFINE = 286,
+ GLOBAL = 287,
+ CONSTANT = 288,
+ SECTION = 289,
+ ALIAS = 290,
+ VOLATILE = 291,
+ THREAD_LOCAL = 292,
+ TO = 293,
+ DOTDOTDOT = 294,
+ NULL_TOK = 295,
+ UNDEF = 296,
+ INTERNAL = 297,
+ LINKONCE = 298,
+ WEAK = 299,
+ APPENDING = 300,
+ DLLIMPORT = 301,
+ DLLEXPORT = 302,
+ EXTERN_WEAK = 303,
+ COMMON = 304,
+ OPAQUE = 305,
+ EXTERNAL = 306,
+ TARGET = 307,
+ TRIPLE = 308,
+ ALIGN = 309,
+ ADDRSPACE = 310,
+ DEPLIBS = 311,
+ CALL = 312,
+ TAIL = 313,
+ ASM_TOK = 314,
+ MODULE = 315,
+ SIDEEFFECT = 316,
+ CC_TOK = 317,
+ CCC_TOK = 318,
+ FASTCC_TOK = 319,
+ COLDCC_TOK = 320,
+ X86_STDCALLCC_TOK = 321,
+ X86_FASTCALLCC_TOK = 322,
+ DATALAYOUT = 323,
+ RET = 324,
+ BR = 325,
+ SWITCH = 326,
+ INVOKE = 327,
+ UNWIND = 328,
+ UNREACHABLE = 329,
+ ADD = 330,
+ SUB = 331,
+ MUL = 332,
+ UDIV = 333,
+ SDIV = 334,
+ FDIV = 335,
+ UREM = 336,
+ SREM = 337,
+ FREM = 338,
+ AND = 339,
+ OR = 340,
+ XOR = 341,
+ SHL = 342,
+ LSHR = 343,
+ ASHR = 344,
+ ICMP = 345,
+ FCMP = 346,
+ VICMP = 347,
+ VFCMP = 348,
+ EQ = 349,
+ NE = 350,
+ SLT = 351,
+ SGT = 352,
+ SLE = 353,
+ SGE = 354,
+ ULT = 355,
+ UGT = 356,
+ ULE = 357,
+ UGE = 358,
+ OEQ = 359,
+ ONE = 360,
+ OLT = 361,
+ OGT = 362,
+ OLE = 363,
+ OGE = 364,
+ ORD = 365,
+ UNO = 366,
+ UEQ = 367,
+ UNE = 368,
+ MALLOC = 369,
+ ALLOCA = 370,
+ FREE = 371,
+ LOAD = 372,
+ STORE = 373,
+ GETELEMENTPTR = 374,
+ TRUNC = 375,
+ ZEXT = 376,
+ SEXT = 377,
+ FPTRUNC = 378,
+ FPEXT = 379,
+ BITCAST = 380,
+ UITOFP = 381,
+ SITOFP = 382,
+ FPTOUI = 383,
+ FPTOSI = 384,
+ INTTOPTR = 385,
+ PTRTOINT = 386,
+ PHI_TOK = 387,
+ SELECT = 388,
+ VAARG = 389,
+ EXTRACTELEMENT = 390,
+ INSERTELEMENT = 391,
+ SHUFFLEVECTOR = 392,
+ GETRESULT = 393,
+ EXTRACTVALUE = 394,
+ INSERTVALUE = 395,
+ SIGNEXT = 396,
+ ZEROEXT = 397,
+ NORETURN = 398,
+ INREG = 399,
+ SRET = 400,
+ NOUNWIND = 401,
+ NOALIAS = 402,
+ BYVAL = 403,
+ NEST = 404,
+ READNONE = 405,
+ READONLY = 406,
+ GC = 407,
+ DEFAULT = 408,
+ HIDDEN = 409,
+ PROTECTED = 410
};
#endif
/* Tokens. */
#define ESINT64VAL 258
#define EUINT64VAL 259
-#define SINTVAL 260
-#define UINTVAL 261
-#define FPVAL 262
-#define VOID 263
-#define BOOL 264
-#define INTTYPE 265
-#define FLOAT 266
-#define DOUBLE 267
-#define LABEL 268
-#define TYPE 269
-#define VAR_ID 270
-#define LABELSTR 271
-#define STRINGCONSTANT 272
-#define IMPLEMENTATION 273
-#define ZEROINITIALIZER 274
-#define TRUETOK 275
-#define FALSETOK 276
-#define BEGINTOK 277
-#define ENDTOK 278
-#define DECLARE 279
-#define DEFINE 280
-#define GLOBAL 281
-#define CONSTANT 282
-#define SECTION 283
-#define VOLATILE 284
-#define TO 285
-#define DOTDOTDOT 286
-#define NULL_TOK 287
-#define UNDEF 288
-#define INTERNAL 289
-#define LINKONCE 290
-#define WEAK 291
-#define APPENDING 292
-#define DLLIMPORT 293
-#define DLLEXPORT 294
-#define EXTERN_WEAK 295
-#define OPAQUE 296
-#define NOT 297
-#define EXTERNAL 298
-#define TARGET 299
-#define TRIPLE 300
-#define ENDIAN 301
-#define POINTERSIZE 302
-#define LITTLE 303
-#define BIG 304
-#define ALIGN 305
-#define DEPLIBS 306
-#define CALL 307
-#define TAIL 308
-#define ASM_TOK 309
-#define MODULE 310
-#define SIDEEFFECT 311
-#define CC_TOK 312
-#define CCC_TOK 313
-#define CSRETCC_TOK 314
-#define FASTCC_TOK 315
-#define COLDCC_TOK 316
-#define X86_STDCALLCC_TOK 317
-#define X86_FASTCALLCC_TOK 318
-#define DATALAYOUT 319
-#define RET 320
-#define BR 321
-#define SWITCH 322
-#define INVOKE 323
-#define UNWIND 324
-#define UNREACHABLE 325
-#define ADD 326
-#define SUB 327
-#define MUL 328
-#define UDIV 329
-#define SDIV 330
-#define FDIV 331
-#define UREM 332
-#define SREM 333
-#define FREM 334
-#define AND 335
-#define OR 336
-#define XOR 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 SHL 380
-#define LSHR 381
-#define ASHR 382
-#define VAARG 383
-#define EXTRACTELEMENT 384
-#define INSERTELEMENT 385
-#define SHUFFLEVECTOR 386
-#define NORETURN 387
+#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 X86_FP80 269
+#define FP128 270
+#define PPC_FP128 271
+#define LABEL 272
+#define TYPE 273
+#define LOCALVAR 274
+#define GLOBALVAR 275
+#define LABELSTR 276
+#define STRINGCONSTANT 277
+#define ATSTRINGCONSTANT 278
+#define PCTSTRINGCONSTANT 279
+#define ZEROINITIALIZER 280
+#define TRUETOK 281
+#define FALSETOK 282
+#define BEGINTOK 283
+#define ENDTOK 284
+#define DECLARE 285
+#define DEFINE 286
+#define GLOBAL 287
+#define CONSTANT 288
+#define SECTION 289
+#define ALIAS 290
+#define VOLATILE 291
+#define THREAD_LOCAL 292
+#define TO 293
+#define DOTDOTDOT 294
+#define NULL_TOK 295
+#define UNDEF 296
+#define INTERNAL 297
+#define LINKONCE 298
+#define WEAK 299
+#define APPENDING 300
+#define DLLIMPORT 301
+#define DLLEXPORT 302
+#define EXTERN_WEAK 303
+#define COMMON 304
+#define OPAQUE 305
+#define EXTERNAL 306
+#define TARGET 307
+#define TRIPLE 308
+#define ALIGN 309
+#define ADDRSPACE 310
+#define DEPLIBS 311
+#define CALL 312
+#define TAIL 313
+#define ASM_TOK 314
+#define MODULE 315
+#define SIDEEFFECT 316
+#define CC_TOK 317
+#define CCC_TOK 318
+#define FASTCC_TOK 319
+#define COLDCC_TOK 320
+#define X86_STDCALLCC_TOK 321
+#define X86_FASTCALLCC_TOK 322
+#define DATALAYOUT 323
+#define RET 324
+#define BR 325
+#define SWITCH 326
+#define INVOKE 327
+#define UNWIND 328
+#define UNREACHABLE 329
+#define ADD 330
+#define SUB 331
+#define MUL 332
+#define UDIV 333
+#define SDIV 334
+#define FDIV 335
+#define UREM 336
+#define SREM 337
+#define FREM 338
+#define AND 339
+#define OR 340
+#define XOR 341
+#define SHL 342
+#define LSHR 343
+#define ASHR 344
+#define ICMP 345
+#define FCMP 346
+#define VICMP 347
+#define VFCMP 348
+#define EQ 349
+#define NE 350
+#define SLT 351
+#define SGT 352
+#define SLE 353
+#define SGE 354
+#define ULT 355
+#define UGT 356
+#define ULE 357
+#define UGE 358
+#define OEQ 359
+#define ONE 360
+#define OLT 361
+#define OGT 362
+#define OLE 363
+#define OGE 364
+#define ORD 365
+#define UNO 366
+#define UEQ 367
+#define UNE 368
+#define MALLOC 369
+#define ALLOCA 370
+#define FREE 371
+#define LOAD 372
+#define STORE 373
+#define GETELEMENTPTR 374
+#define TRUNC 375
+#define ZEXT 376
+#define SEXT 377
+#define FPTRUNC 378
+#define FPEXT 379
+#define BITCAST 380
+#define UITOFP 381
+#define SITOFP 382
+#define FPTOUI 383
+#define FPTOSI 384
+#define INTTOPTR 385
+#define PTRTOINT 386
+#define PHI_TOK 387
+#define SELECT 388
+#define VAARG 389
+#define EXTRACTELEMENT 390
+#define INSERTELEMENT 391
+#define SHUFFLEVECTOR 392
+#define GETRESULT 393
+#define EXTRACTVALUE 394
+#define INSERTVALUE 395
+#define SIGNEXT 396
+#define ZEROEXT 397
+#define NORETURN 398
+#define INREG 399
+#define SRET 400
+#define NOUNWIND 401
+#define NOALIAS 402
+#define BYVAL 403
+#define NEST 404
+#define READNONE 405
+#define READONLY 406
+#define GC 407
+#define DEFAULT 408
+#define HIDDEN 409
+#define PROTECTED 410
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 876 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-typedef union YYSTYPE {
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+#line 953 "/Users/gohman/LLVM/llvm/lib/AsmParser/llvmAsmParser.y"
+{
llvm::Module *ModuleVal;
llvm::Function *FunctionVal;
llvm::BasicBlock *BasicBlockVal;
llvm::PATypeHolder *TypeVal;
llvm::Value *ValueVal;
std::vector<llvm::Value*> *ValueList;
+ std::vector<unsigned> *ConstantList;
llvm::ArgListType *ArgList;
llvm::TypeWithAttrs TypeWithAttrs;
llvm::TypeWithAttrsList *TypeWithAttrsList;
- llvm::ValueRefList *ValueRefList;
+ llvm::ParamList *ParamList;
// Represent the RHS of PHI node
std::list<std::pair<llvm::Value*,
std::vector<llvm::Constant*> *ConstVector;
llvm::GlobalValue::LinkageTypes Linkage;
- llvm::FunctionType::ParameterAttributes ParamAttrs;
+ llvm::GlobalValue::VisibilityTypes Visibility;
+ llvm::ParameterAttributes ParamAttrs;
+ llvm::APInt *APIntVal;
int64_t SInt64Val;
uint64_t UInt64Val;
int SIntVal;
unsigned UIntVal;
- double FPVal;
+ llvm::APFloat *FPVal;
bool BoolVal;
- char *StrVal; // This memory is strdup'd!
- llvm::ValID ValIDVal; // strdup'd memory maybe!
+ std::string *StrVal; // This memory must be deleted
+ llvm::ValID ValIDVal;
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 348 "llvmAsmParser.tab.h"
+}
+/* Line 1489 of yacc.c. */
+#line 407 "llvmAsmParser.tab.h"
+ YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
extern YYSTYPE llvmAsmlval;
-
-