1 /* A Bison parser, made by GNU Bison 1.875c. */
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
21 /* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
29 /* Put the tokens into the symbol table, so that GDB and other debuggers
55 ZEROINITIALIZER = 281,
98 X86_STDCALLCC_TOK = 324,
99 X86_FASTCALLCC_TOK = 325,
143 EXTRACTELEMENT = 369,
183 #define ESINT64VAL 258
184 #define EUINT64VAL 259
204 #define STRINGCONSTANT 279
205 #define IMPLEMENTATION 280
206 #define ZEROINITIALIZER 281
217 #define DOTDOTDOT 292
224 #define APPENDING 299
225 #define DLLIMPORT 300
226 #define DLLEXPORT 301
227 #define EXTERN_WEAK 302
234 #define POINTERSIZE 309
243 #define SIDEEFFECT 318
246 #define CSRETCC_TOK 321
247 #define FASTCC_TOK 322
248 #define COLDCC_TOK 323
249 #define X86_STDCALLCC_TOK 324
250 #define X86_FASTCALLCC_TOK 325
251 #define DATALAYOUT 326
256 #define UNREACHABLE 331
290 #define GETELEMENTPTR 365
294 #define EXTRACTELEMENT 369
295 #define INSERTELEMENT 370
296 #define SHUFFLEVECTOR 371
297 #define VAARG_old 372
298 #define VANEXT_old 373
336 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
337 #line 1750 "/users/dag/projects/cascade/llvm.modified/tools/llvm-upgrade/UpgradeParser.y"
338 typedef union YYSTYPE {
339 llvm::Module *ModuleVal;
340 llvm::Function *FunctionVal;
341 std::pair<llvm::PATypeInfo, char*> *ArgVal;
342 llvm::BasicBlock *BasicBlockVal;
343 llvm::TermInstInfo TermInstVal;
344 llvm::InstrInfo InstVal;
345 llvm::ConstInfo ConstVal;
346 llvm::ValueInfo ValueVal;
347 llvm::PATypeInfo TypeVal;
348 llvm::TypeInfo PrimType;
349 llvm::PHIListInfo PHIList;
350 std::list<llvm::PATypeInfo> *TypeList;
351 std::vector<llvm::ValueInfo> *ValueList;
352 std::vector<llvm::ConstInfo> *ConstVector;
355 std::vector<std::pair<llvm::PATypeInfo,char*> > *ArgList;
356 // Represent the RHS of PHI node
357 std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
359 llvm::GlobalValue::LinkageTypes Linkage;
367 char *StrVal; // This memory is strdup'd!
368 llvm::ValID ValIDVal; // strdup'd memory maybe!
370 llvm::BinaryOps BinaryOpVal;
371 llvm::TermOps TermOpVal;
372 llvm::MemoryOps MemOpVal;
373 llvm::OtherOps OtherOpVal;
374 llvm::CastOps CastOpVal;
375 llvm::ICmpInst::Predicate IPred;
376 llvm::FCmpInst::Predicate FPred;
377 llvm::Module::Endianness Endianness;
379 /* Line 1268 of yacc.c. */
380 #line 381 "UpgradeParser.tab.h"
381 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
382 # define YYSTYPE_IS_DECLARED 1
383 # define YYSTYPE_IS_TRIVIAL 1
386 extern YYSTYPE Upgradelval;