1 /* A Bison parser, made by GNU Bison 2.1. */
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 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., 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, 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,
135 EXTRACTELEMENT = 361,
143 #define ESINT64VAL 258
144 #define EUINT64VAL 259
164 #define STRINGCONSTANT 279
165 #define IMPLEMENTATION 280
166 #define ZEROINITIALIZER 281
177 #define DOTDOTDOT 292
184 #define APPENDING 299
185 #define DLLIMPORT 300
186 #define DLLEXPORT 301
187 #define EXTERN_WEAK 302
194 #define POINTERSIZE 309
203 #define SIDEEFFECT 318
206 #define CSRETCC_TOK 321
207 #define FASTCC_TOK 322
208 #define COLDCC_TOK 323
209 #define X86_STDCALLCC_TOK 324
210 #define X86_FASTCALLCC_TOK 325
211 #define DATALAYOUT 326
217 #define UNREACHABLE 332
239 #define GETELEMENTPTR 354
246 #define EXTRACTELEMENT 361
247 #define INSERTELEMENT 362
248 #define SHUFFLEVECTOR 363
249 #define VAARG_old 364
250 #define VANEXT_old 365
255 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
256 #line 1011 "/proj/llvm/llvm/lib/AsmParser/llvmAsmParser.y"
257 typedef union YYSTYPE {
258 llvm::Module *ModuleVal;
259 llvm::Function *FunctionVal;
260 std::pair<llvm::PATypeHolder*, char*> *ArgVal;
261 llvm::BasicBlock *BasicBlockVal;
262 llvm::TerminatorInst *TermInstVal;
263 llvm::Instruction *InstVal;
264 llvm::Constant *ConstVal;
266 const llvm::Type *PrimType;
267 llvm::PATypeHolder *TypeVal;
268 llvm::Value *ValueVal;
270 std::vector<std::pair<llvm::PATypeHolder*,char*> > *ArgList;
271 std::vector<llvm::Value*> *ValueList;
272 std::list<llvm::PATypeHolder> *TypeList;
273 // Represent the RHS of PHI node
274 std::list<std::pair<llvm::Value*,
275 llvm::BasicBlock*> > *PHIList;
276 std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
277 std::vector<llvm::Constant*> *ConstVector;
279 llvm::GlobalValue::LinkageTypes Linkage;
287 char *StrVal; // This memory is strdup'd!
288 llvm::ValID ValIDVal; // strdup'd memory maybe!
290 BinaryOpInfo BinaryOpVal;
291 TermOpInfo TermOpVal;
293 OtherOpInfo OtherOpVal;
294 llvm::Module::Endianness Endianness;
296 /* Line 1447 of yacc.c. */
297 #line 298 "llvmAsmParser.tab.h"
298 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
299 # define YYSTYPE_IS_DECLARED 1
300 # define YYSTYPE_IS_TRIVIAL 1
303 extern YYSTYPE llvmAsmlval;