1 /* A Bison parser, made by GNU Bison 2.3. */
3 /* Skeleton interface for Bison's Yacc-like parsers in C
5 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6 Free Software Foundation, Inc.
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 Boston, MA 02110-1301, USA. */
23 /* As a special exception, you may create a larger work that contains
24 part or all of the Bison parser skeleton and distribute that work
25 under terms of your choice, so long as that work isn't itself a
26 parser generator using the skeleton or a modified version thereof
27 as a parser skeleton. Alternatively, if you modify or redistribute
28 the parser skeleton itself, you may (at your option) remove this
29 special exception, which will cause the skeleton and the resulting
30 Bison output files to be licensed under the GNU General Public
31 License without this special exception.
33 This special exception was added by the Free Software Foundation in
34 version 2.2 of Bison. */
39 /* Put the tokens into the symbol table, so that GDB and other debuggers
65 ZEROINITIALIZER = 281,
108 X86_STDCALLCC_TOK = 324,
109 X86_FASTCALLCC_TOK = 325,
153 EXTRACTELEMENT = 369,
194 #define ESINT64VAL 258
195 #define EUINT64VAL 259
215 #define STRINGCONSTANT 279
216 #define IMPLEMENTATION 280
217 #define ZEROINITIALIZER 281
228 #define DOTDOTDOT 292
235 #define APPENDING 299
236 #define DLLIMPORT 300
237 #define DLLEXPORT 301
238 #define EXTERN_WEAK 302
245 #define POINTERSIZE 309
254 #define SIDEEFFECT 318
257 #define CSRETCC_TOK 321
258 #define FASTCC_TOK 322
259 #define COLDCC_TOK 323
260 #define X86_STDCALLCC_TOK 324
261 #define X86_FASTCALLCC_TOK 325
262 #define DATALAYOUT 326
267 #define UNREACHABLE 331
301 #define GETELEMENTPTR 365
305 #define EXTRACTELEMENT 369
306 #define INSERTELEMENT 370
307 #define SHUFFLEVECTOR 371
308 #define VAARG_old 372
309 #define VANEXT_old 373
347 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
348 typedef union YYSTYPE
349 #line 1748 "/home/chandlerc/code/compilers/llvm/tools/llvm-upgrade/UpgradeParser.y"
351 llvm::Module *ModuleVal;
352 llvm::Function *FunctionVal;
353 std::pair<llvm::PATypeInfo, char*> *ArgVal;
354 llvm::BasicBlock *BasicBlockVal;
355 llvm::TermInstInfo TermInstVal;
356 llvm::InstrInfo InstVal;
357 llvm::ConstInfo ConstVal;
358 llvm::ValueInfo ValueVal;
359 llvm::PATypeInfo TypeVal;
360 llvm::TypeInfo PrimType;
361 llvm::PHIListInfo PHIList;
362 std::list<llvm::PATypeInfo> *TypeList;
363 std::vector<llvm::ValueInfo> *ValueList;
364 std::vector<llvm::ConstInfo> *ConstVector;
367 std::vector<std::pair<llvm::PATypeInfo,char*> > *ArgList;
368 // Represent the RHS of PHI node
369 std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
371 llvm::GlobalValue::LinkageTypes Linkage;
379 char *StrVal; // This memory is strdup'd!
380 llvm::ValID ValIDVal; // strdup'd memory maybe!
382 llvm::BinaryOps BinaryOpVal;
383 llvm::TermOps TermOpVal;
384 llvm::MemoryOps MemOpVal;
385 llvm::OtherOps OtherOpVal;
386 llvm::CastOps CastOpVal;
387 llvm::ICmpInst::Predicate IPred;
388 llvm::FCmpInst::Predicate FPred;
389 llvm::Module::Endianness Endianness;
391 /* Line 1489 of yacc.c. */
392 #line 393 "UpgradeParser.tab.h"
394 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
395 # define YYSTYPE_IS_DECLARED 1
396 # define YYSTYPE_IS_TRIVIAL 1
399 extern YYSTYPE Upgradelval;