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
52 ATSTRINGCONSTANT = 278,
53 PCTSTRINGCONSTANT = 279,
54 ZEROINITIALIZER = 280,
93 X86_STDCALLCC_TOK = 319,
94 X86_FASTCALLCC_TOK = 320,
160 EXTRACTELEMENT = 386,
177 #define ESINT64VAL 258
178 #define EUINT64VAL 259
179 #define ESAPINTVAL 260
180 #define EUAPINTVAL 261
181 #define LOCALVAL_ID 262
182 #define GLOBALVAL_ID 263
190 #define PPC_FP128 271
194 #define GLOBALVAR 275
196 #define STRINGCONSTANT 277
197 #define ATSTRINGCONSTANT 278
198 #define PCTSTRINGCONSTANT 279
199 #define ZEROINITIALIZER 280
211 #define THREAD_LOCAL 292
213 #define DOTDOTDOT 294
219 #define APPENDING 300
220 #define DLLIMPORT 301
221 #define DLLEXPORT 302
222 #define EXTERN_WEAK 303
233 #define SIDEEFFECT 314
236 #define FASTCC_TOK 317
237 #define COLDCC_TOK 318
238 #define X86_STDCALLCC_TOK 319
239 #define X86_FASTCALLCC_TOK 320
240 #define DATALAYOUT 321
246 #define UNREACHABLE 327
289 #define GETELEMENTPTR 370
305 #define EXTRACTELEMENT 386
306 #define INSERTELEMENT 387
307 #define SHUFFLEVECTOR 388
319 #define PROTECTED 400
324 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
325 #line 963 "/users/dag/projects/cascade/llvm.modified/lib/AsmParser/llvmAsmParser.y"
326 typedef union YYSTYPE {
327 llvm::Module *ModuleVal;
328 llvm::Function *FunctionVal;
329 llvm::BasicBlock *BasicBlockVal;
330 llvm::TerminatorInst *TermInstVal;
331 llvm::Instruction *InstVal;
332 llvm::Constant *ConstVal;
334 const llvm::Type *PrimType;
335 std::list<llvm::PATypeHolder> *TypeList;
336 llvm::PATypeHolder *TypeVal;
337 llvm::Value *ValueVal;
338 std::vector<llvm::Value*> *ValueList;
339 llvm::ArgListType *ArgList;
340 llvm::TypeWithAttrs TypeWithAttrs;
341 llvm::TypeWithAttrsList *TypeWithAttrsList;
342 llvm::ValueRefList *ValueRefList;
344 // Represent the RHS of PHI node
345 std::list<std::pair<llvm::Value*,
346 llvm::BasicBlock*> > *PHIList;
347 std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
348 std::vector<llvm::Constant*> *ConstVector;
350 llvm::GlobalValue::LinkageTypes Linkage;
351 llvm::GlobalValue::VisibilityTypes Visibility;
353 llvm::APInt *APIntVal;
361 std::string *StrVal; // This memory must be deleted
362 llvm::ValID ValIDVal;
364 llvm::Instruction::BinaryOps BinaryOpVal;
365 llvm::Instruction::TermOps TermOpVal;
366 llvm::Instruction::MemoryOps MemOpVal;
367 llvm::Instruction::CastOps CastOpVal;
368 llvm::Instruction::OtherOps OtherOpVal;
369 llvm::ICmpInst::Predicate IPredicate;
370 llvm::FCmpInst::Predicate FPredicate;
372 /* Line 1268 of yacc.c. */
373 #line 374 "llvmAsmParser.tab.h"
374 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
375 # define YYSTYPE_IS_DECLARED 1
376 # define YYSTYPE_IS_TRIVIAL 1
379 extern YYSTYPE llvmAsmlval;