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
49 ATSTRINGCONSTANT = 275,
50 PCTSTRINGCONSTANT = 276,
51 ZEROINITIALIZER = 277,
90 X86_STDCALLCC_TOK = 316,
91 X86_FASTCALLCC_TOK = 317,
157 EXTRACTELEMENT = 383,
170 #define ESINT64VAL 258
171 #define EUINT64VAL 259
172 #define ESAPINTVAL 260
173 #define EUAPINTVAL 261
174 #define LOCALVAL_ID 262
175 #define GLOBALVAL_ID 263
184 #define GLOBALVAR 272
186 #define STRINGCONSTANT 274
187 #define ATSTRINGCONSTANT 275
188 #define PCTSTRINGCONSTANT 276
189 #define ZEROINITIALIZER 277
201 #define THREAD_LOCAL 289
203 #define DOTDOTDOT 291
209 #define APPENDING 297
210 #define DLLIMPORT 298
211 #define DLLEXPORT 299
212 #define EXTERN_WEAK 300
223 #define SIDEEFFECT 311
226 #define FASTCC_TOK 314
227 #define COLDCC_TOK 315
228 #define X86_STDCALLCC_TOK 316
229 #define X86_FASTCALLCC_TOK 317
230 #define DATALAYOUT 318
236 #define UNREACHABLE 324
279 #define GETELEMENTPTR 367
295 #define EXTRACTELEMENT 383
296 #define INSERTELEMENT 384
297 #define SHUFFLEVECTOR 385
304 #define PROTECTED 392
309 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
310 #line 957 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
311 typedef union YYSTYPE {
312 llvm::Module *ModuleVal;
313 llvm::Function *FunctionVal;
314 llvm::BasicBlock *BasicBlockVal;
315 llvm::TerminatorInst *TermInstVal;
316 llvm::Instruction *InstVal;
317 llvm::Constant *ConstVal;
319 const llvm::Type *PrimType;
320 std::list<llvm::PATypeHolder> *TypeList;
321 llvm::PATypeHolder *TypeVal;
322 llvm::Value *ValueVal;
323 std::vector<llvm::Value*> *ValueList;
324 llvm::ArgListType *ArgList;
325 llvm::TypeWithAttrs TypeWithAttrs;
326 llvm::TypeWithAttrsList *TypeWithAttrsList;
327 llvm::ValueRefList *ValueRefList;
329 // Represent the RHS of PHI node
330 std::list<std::pair<llvm::Value*,
331 llvm::BasicBlock*> > *PHIList;
332 std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
333 std::vector<llvm::Constant*> *ConstVector;
335 llvm::GlobalValue::LinkageTypes Linkage;
336 llvm::GlobalValue::VisibilityTypes Visibility;
338 llvm::APInt *APIntVal;
346 std::string *StrVal; // This memory must be deleted
347 llvm::ValID ValIDVal;
349 llvm::Instruction::BinaryOps BinaryOpVal;
350 llvm::Instruction::TermOps TermOpVal;
351 llvm::Instruction::MemoryOps MemOpVal;
352 llvm::Instruction::CastOps CastOpVal;
353 llvm::Instruction::OtherOps OtherOpVal;
354 llvm::ICmpInst::Predicate IPredicate;
355 llvm::FCmpInst::Predicate FPredicate;
357 /* Line 1447 of yacc.c. */
358 #line 359 "llvmAsmParser.tab.h"
359 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
360 # define YYSTYPE_IS_DECLARED 1
361 # define YYSTYPE_IS_TRIVIAL 1
364 extern YYSTYPE llvmAsmlval;