/* Put the tokens into the symbol table, so that GDB and other debuggers
know about them. */
enum yytokentype {
- VOID = 258,
- BOOL = 259,
- SBYTE = 260,
- UBYTE = 261,
- SHORT = 262,
- USHORT = 263,
- INT = 264,
- UINT = 265,
- LONG = 266,
- ULONG = 267,
- FLOAT = 268,
- DOUBLE = 269,
- LABEL = 270,
- OPAQUE = 271,
- ESINT64VAL = 272,
- EUINT64VAL = 273,
- SINTVAL = 274,
- UINTVAL = 275,
- FPVAL = 276,
- NULL_TOK = 277,
- UNDEF = 278,
- ZEROINITIALIZER = 279,
- TRUETOK = 280,
- FALSETOK = 281,
- TYPE = 282,
- VAR_ID = 283,
- LABELSTR = 284,
- STRINGCONSTANT = 285,
- IMPLEMENTATION = 286,
- BEGINTOK = 287,
- ENDTOK = 288,
- DECLARE = 289,
- GLOBAL = 290,
- CONSTANT = 291,
- SECTION = 292,
- VOLATILE = 293,
- TO = 294,
- DOTDOTDOT = 295,
- CONST = 296,
- INTERNAL = 297,
- LINKONCE = 298,
- WEAK = 299,
+ ESINT64VAL = 258,
+ EUINT64VAL = 259,
+ SINTVAL = 260,
+ UINTVAL = 261,
+ FPVAL = 262,
+ VOID = 263,
+ BOOL = 264,
+ SBYTE = 265,
+ UBYTE = 266,
+ SHORT = 267,
+ USHORT = 268,
+ INT = 269,
+ UINT = 270,
+ LONG = 271,
+ ULONG = 272,
+ FLOAT = 273,
+ DOUBLE = 274,
+ TYPE = 275,
+ LABEL = 276,
+ VAR_ID = 277,
+ LABELSTR = 278,
+ STRINGCONSTANT = 279,
+ IMPLEMENTATION = 280,
+ ZEROINITIALIZER = 281,
+ TRUETOK = 282,
+ FALSETOK = 283,
+ BEGINTOK = 284,
+ ENDTOK = 285,
+ DECLARE = 286,
+ GLOBAL = 287,
+ CONSTANT = 288,
+ SECTION = 289,
+ VOLATILE = 290,
+ TO = 291,
+ DOTDOTDOT = 292,
+ NULL_TOK = 293,
+ UNDEF = 294,
+ CONST = 295,
+ INTERNAL = 296,
+ LINKONCE = 297,
+ WEAK = 298,
+ APPENDING = 299,
DLLIMPORT = 300,
DLLEXPORT = 301,
EXTERN_WEAK = 302,
- APPENDING = 303,
+ OPAQUE = 303,
NOT = 304,
EXTERNAL = 305,
TARGET = 306,
BR = 328,
SWITCH = 329,
INVOKE = 330,
- UNWIND = 331,
- UNREACHABLE = 332,
- ADD = 333,
- SUB = 334,
- MUL = 335,
- UDIV = 336,
- SDIV = 337,
- FDIV = 338,
- UREM = 339,
- SREM = 340,
- FREM = 341,
- AND = 342,
- OR = 343,
- XOR = 344,
- SETLE = 345,
- SETGE = 346,
- SETLT = 347,
- SETGT = 348,
- SETEQ = 349,
- SETNE = 350,
- MALLOC = 351,
- ALLOCA = 352,
- FREE = 353,
- LOAD = 354,
- STORE = 355,
- GETELEMENTPTR = 356,
- PHI_TOK = 357,
- SELECT = 358,
- SHL = 359,
- SHR = 360,
- ASHR = 361,
- LSHR = 362,
- VAARG = 363,
- EXTRACTELEMENT = 364,
- INSERTELEMENT = 365,
- SHUFFLEVECTOR = 366,
- CAST = 367
+ UNREACHABLE = 331,
+ UNWIND = 332,
+ EXCEPT = 333,
+ ADD = 334,
+ SUB = 335,
+ MUL = 336,
+ DIV = 337,
+ UDIV = 338,
+ SDIV = 339,
+ FDIV = 340,
+ REM = 341,
+ UREM = 342,
+ SREM = 343,
+ FREM = 344,
+ AND = 345,
+ OR = 346,
+ XOR = 347,
+ SHL = 348,
+ SHR = 349,
+ ASHR = 350,
+ LSHR = 351,
+ SETLE = 352,
+ SETGE = 353,
+ SETLT = 354,
+ SETGT = 355,
+ SETEQ = 356,
+ SETNE = 357,
+ ICMP = 358,
+ FCMP = 359,
+ MALLOC = 360,
+ ALLOCA = 361,
+ FREE = 362,
+ LOAD = 363,
+ STORE = 364,
+ GETELEMENTPTR = 365,
+ PHI_TOK = 366,
+ SELECT = 367,
+ VAARG = 368,
+ EXTRACTELEMENT = 369,
+ INSERTELEMENT = 370,
+ SHUFFLEVECTOR = 371,
+ VAARG_old = 372,
+ VANEXT_old = 373,
+ EQ = 374,
+ NE = 375,
+ SLT = 376,
+ SGT = 377,
+ SLE = 378,
+ SGE = 379,
+ ULT = 380,
+ UGT = 381,
+ ULE = 382,
+ UGE = 383,
+ OEQ = 384,
+ ONE = 385,
+ OLT = 386,
+ OGT = 387,
+ OLE = 388,
+ OGE = 389,
+ ORD = 390,
+ UNO = 391,
+ UEQ = 392,
+ UNE = 393,
+ CAST = 394,
+ TRUNC = 395,
+ ZEXT = 396,
+ SEXT = 397,
+ FPTRUNC = 398,
+ FPEXT = 399,
+ FPTOUI = 400,
+ FPTOSI = 401,
+ UITOFP = 402,
+ SITOFP = 403,
+ PTRTOINT = 404,
+ INTTOPTR = 405,
+ BITCAST = 406
};
#endif
/* Tokens. */
-#define VOID 258
-#define BOOL 259
-#define SBYTE 260
-#define UBYTE 261
-#define SHORT 262
-#define USHORT 263
-#define INT 264
-#define UINT 265
-#define LONG 266
-#define ULONG 267
-#define FLOAT 268
-#define DOUBLE 269
-#define LABEL 270
-#define OPAQUE 271
-#define ESINT64VAL 272
-#define EUINT64VAL 273
-#define SINTVAL 274
-#define UINTVAL 275
-#define FPVAL 276
-#define NULL_TOK 277
-#define UNDEF 278
-#define ZEROINITIALIZER 279
-#define TRUETOK 280
-#define FALSETOK 281
-#define TYPE 282
-#define VAR_ID 283
-#define LABELSTR 284
-#define STRINGCONSTANT 285
-#define IMPLEMENTATION 286
-#define BEGINTOK 287
-#define ENDTOK 288
-#define DECLARE 289
-#define GLOBAL 290
-#define CONSTANT 291
-#define SECTION 292
-#define VOLATILE 293
-#define TO 294
-#define DOTDOTDOT 295
-#define CONST 296
-#define INTERNAL 297
-#define LINKONCE 298
-#define WEAK 299
+#define ESINT64VAL 258
+#define EUINT64VAL 259
+#define SINTVAL 260
+#define UINTVAL 261
+#define FPVAL 262
+#define VOID 263
+#define BOOL 264
+#define SBYTE 265
+#define UBYTE 266
+#define SHORT 267
+#define USHORT 268
+#define INT 269
+#define UINT 270
+#define LONG 271
+#define ULONG 272
+#define FLOAT 273
+#define DOUBLE 274
+#define TYPE 275
+#define LABEL 276
+#define VAR_ID 277
+#define LABELSTR 278
+#define STRINGCONSTANT 279
+#define IMPLEMENTATION 280
+#define ZEROINITIALIZER 281
+#define TRUETOK 282
+#define FALSETOK 283
+#define BEGINTOK 284
+#define ENDTOK 285
+#define DECLARE 286
+#define GLOBAL 287
+#define CONSTANT 288
+#define SECTION 289
+#define VOLATILE 290
+#define TO 291
+#define DOTDOTDOT 292
+#define NULL_TOK 293
+#define UNDEF 294
+#define CONST 295
+#define INTERNAL 296
+#define LINKONCE 297
+#define WEAK 298
+#define APPENDING 299
#define DLLIMPORT 300
#define DLLEXPORT 301
#define EXTERN_WEAK 302
-#define APPENDING 303
+#define OPAQUE 303
#define NOT 304
#define EXTERNAL 305
#define TARGET 306
#define BR 328
#define SWITCH 329
#define INVOKE 330
-#define UNWIND 331
-#define UNREACHABLE 332
-#define ADD 333
-#define SUB 334
-#define MUL 335
-#define UDIV 336
-#define SDIV 337
-#define FDIV 338
-#define UREM 339
-#define SREM 340
-#define FREM 341
-#define AND 342
-#define OR 343
-#define XOR 344
-#define SETLE 345
-#define SETGE 346
-#define SETLT 347
-#define SETGT 348
-#define SETEQ 349
-#define SETNE 350
-#define MALLOC 351
-#define ALLOCA 352
-#define FREE 353
-#define LOAD 354
-#define STORE 355
-#define GETELEMENTPTR 356
-#define PHI_TOK 357
-#define SELECT 358
-#define SHL 359
-#define SHR 360
-#define ASHR 361
-#define LSHR 362
-#define VAARG 363
-#define EXTRACTELEMENT 364
-#define INSERTELEMENT 365
-#define SHUFFLEVECTOR 366
-#define CAST 367
+#define UNREACHABLE 331
+#define UNWIND 332
+#define EXCEPT 333
+#define ADD 334
+#define SUB 335
+#define MUL 336
+#define DIV 337
+#define UDIV 338
+#define SDIV 339
+#define FDIV 340
+#define REM 341
+#define UREM 342
+#define SREM 343
+#define FREM 344
+#define AND 345
+#define OR 346
+#define XOR 347
+#define SHL 348
+#define SHR 349
+#define ASHR 350
+#define LSHR 351
+#define SETLE 352
+#define SETGE 353
+#define SETLT 354
+#define SETGT 355
+#define SETEQ 356
+#define SETNE 357
+#define ICMP 358
+#define FCMP 359
+#define MALLOC 360
+#define ALLOCA 361
+#define FREE 362
+#define LOAD 363
+#define STORE 364
+#define GETELEMENTPTR 365
+#define PHI_TOK 366
+#define SELECT 367
+#define VAARG 368
+#define EXTRACTELEMENT 369
+#define INSERTELEMENT 370
+#define SHUFFLEVECTOR 371
+#define VAARG_old 372
+#define VANEXT_old 373
+#define EQ 374
+#define NE 375
+#define SLT 376
+#define SGT 377
+#define SLE 378
+#define SGE 379
+#define ULT 380
+#define UGT 381
+#define ULE 382
+#define UGE 383
+#define OEQ 384
+#define ONE 385
+#define OLT 386
+#define OGT 387
+#define OLE 388
+#define OGE 389
+#define ORD 390
+#define UNO 391
+#define UEQ 392
+#define UNE 393
+#define CAST 394
+#define TRUNC 395
+#define ZEXT 396
+#define SEXT 397
+#define FPTRUNC 398
+#define FPEXT 399
+#define FPTOUI 400
+#define FPTOSI 401
+#define UITOFP 402
+#define SITOFP 403
+#define PTRTOINT 404
+#define INTTOPTR 405
+#define BITCAST 406
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 130 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
+#line 1771 "/proj/llvm/llvm-2/tools/llvm-upgrade/UpgradeParser.y"
typedef union YYSTYPE {
- std::string* String;
- TypeInfo Type;
- ValueInfo Value;
- ConstInfo Const;
+ llvm::Module *ModuleVal;
+ llvm::Function *FunctionVal;
+ std::pair<llvm::PATypeInfo, char*> *ArgVal;
+ llvm::BasicBlock *BasicBlockVal;
+ llvm::TermInstInfo TermInstVal;
+ llvm::InstrInfo InstVal;
+ llvm::ConstInfo ConstVal;
+ llvm::ValueInfo ValueVal;
+ llvm::PATypeInfo TypeVal;
+ llvm::TypeInfo PrimType;
+ llvm::PHIListInfo PHIList;
+ std::list<llvm::PATypeInfo> *TypeList;
+ std::vector<llvm::ValueInfo> *ValueList;
+ std::vector<llvm::ConstInfo> *ConstVector;
+
+
+ std::vector<std::pair<llvm::PATypeInfo,char*> > *ArgList;
+ // Represent the RHS of PHI node
+ std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
+
+ llvm::GlobalValue::LinkageTypes Linkage;
+ 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::BinaryOps BinaryOpVal;
+ llvm::TermOps TermOpVal;
+ llvm::MemoryOps MemOpVal;
+ llvm::OtherOps OtherOpVal;
+ llvm::CastOps CastOpVal;
+ llvm::ICmpInst::Predicate IPred;
+ llvm::FCmpInst::Predicate FPred;
+ llvm::Module::Endianness Endianness;
} YYSTYPE;
/* Line 1447 of yacc.c. */
-#line 269 "UpgradeParser.tab.h"
+#line 382 "UpgradeParser.tab.h"
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1