Regenerate.
[oota-llvm.git] / lib / AsmParser / llvmAsmParser.h.cvs
1 /* A Bison parser, made by GNU Bison 2.1.  */
2
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.
5
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)
9    any later version.
10
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.
15
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.  */
20
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.  */
25
26 /* Tokens.  */
27 #ifndef YYTOKENTYPE
28 # define YYTOKENTYPE
29    /* Put the tokens into the symbol table, so that GDB and other debuggers
30       know about them.  */
31    enum yytokentype {
32      ESINT64VAL = 258,
33      EUINT64VAL = 259,
34      SINTVAL = 260,
35      UINTVAL = 261,
36      FPVAL = 262,
37      VOID = 263,
38      BOOL = 264,
39      SBYTE = 265,
40      UBYTE = 266,
41      SHORT = 267,
42      USHORT = 268,
43      INT = 269,
44      UINT = 270,
45      LONG = 271,
46      ULONG = 272,
47      FLOAT = 273,
48      DOUBLE = 274,
49      TYPE = 275,
50      LABEL = 276,
51      VAR_ID = 277,
52      LABELSTR = 278,
53      STRINGCONSTANT = 279,
54      IMPLEMENTATION = 280,
55      ZEROINITIALIZER = 281,
56      TRUETOK = 282,
57      FALSETOK = 283,
58      BEGINTOK = 284,
59      ENDTOK = 285,
60      DECLARE = 286,
61      GLOBAL = 287,
62      CONSTANT = 288,
63      SECTION = 289,
64      VOLATILE = 290,
65      TO = 291,
66      DOTDOTDOT = 292,
67      NULL_TOK = 293,
68      UNDEF = 294,
69      CONST = 295,
70      INTERNAL = 296,
71      LINKONCE = 297,
72      WEAK = 298,
73      APPENDING = 299,
74      DLLIMPORT = 300,
75      DLLEXPORT = 301,
76      EXTERN_WEAK = 302,
77      OPAQUE = 303,
78      NOT = 304,
79      EXTERNAL = 305,
80      TARGET = 306,
81      TRIPLE = 307,
82      ENDIAN = 308,
83      POINTERSIZE = 309,
84      LITTLE = 310,
85      BIG = 311,
86      ALIGN = 312,
87      DEPLIBS = 313,
88      CALL = 314,
89      TAIL = 315,
90      ASM_TOK = 316,
91      MODULE = 317,
92      SIDEEFFECT = 318,
93      CC_TOK = 319,
94      CCC_TOK = 320,
95      CSRETCC_TOK = 321,
96      FASTCC_TOK = 322,
97      COLDCC_TOK = 323,
98      X86_STDCALLCC_TOK = 324,
99      X86_FASTCALLCC_TOK = 325,
100      DATALAYOUT = 326,
101      RET = 327,
102      BR = 328,
103      SWITCH = 329,
104      INVOKE = 330,
105      UNWIND = 331,
106      UNREACHABLE = 332,
107      ADD = 333,
108      SUB = 334,
109      MUL = 335,
110      UDIV = 336,
111      SDIV = 337,
112      FDIV = 338,
113      UREM = 339,
114      SREM = 340,
115      FREM = 341,
116      AND = 342,
117      OR = 343,
118      XOR = 344,
119      SETLE = 345,
120      SETGE = 346,
121      SETLT = 347,
122      SETGT = 348,
123      SETEQ = 349,
124      SETNE = 350,
125      ICMP = 351,
126      FCMP = 352,
127      EQ = 353,
128      NE = 354,
129      SLT = 355,
130      SGT = 356,
131      SLE = 357,
132      SGE = 358,
133      ULT = 359,
134      UGT = 360,
135      ULE = 361,
136      UGE = 362,
137      ORDEQ = 363,
138      ORDNE = 364,
139      ORDLT = 365,
140      ORDGT = 366,
141      ORDLE = 367,
142      ORDGE = 368,
143      ORD = 369,
144      UNO = 370,
145      UNOEQ = 371,
146      UNONE = 372,
147      UNOLT = 373,
148      UNOGT = 374,
149      UNOLE = 375,
150      UNOGE = 376,
151      MALLOC = 377,
152      ALLOCA = 378,
153      FREE = 379,
154      LOAD = 380,
155      STORE = 381,
156      GETELEMENTPTR = 382,
157      TRUNC = 383,
158      ZEXT = 384,
159      SEXT = 385,
160      FPTRUNC = 386,
161      FPEXT = 387,
162      BITCAST = 388,
163      UITOFP = 389,
164      SITOFP = 390,
165      FPTOUI = 391,
166      FPTOSI = 392,
167      INTTOPTR = 393,
168      PTRTOINT = 394,
169      PHI_TOK = 395,
170      SELECT = 396,
171      SHL = 397,
172      LSHR = 398,
173      ASHR = 399,
174      VAARG = 400,
175      EXTRACTELEMENT = 401,
176      INSERTELEMENT = 402,
177      SHUFFLEVECTOR = 403,
178      VAARG_old = 404,
179      VANEXT_old = 405
180    };
181 #endif
182 /* Tokens.  */
183 #define ESINT64VAL 258
184 #define EUINT64VAL 259
185 #define SINTVAL 260
186 #define UINTVAL 261
187 #define FPVAL 262
188 #define VOID 263
189 #define BOOL 264
190 #define SBYTE 265
191 #define UBYTE 266
192 #define SHORT 267
193 #define USHORT 268
194 #define INT 269
195 #define UINT 270
196 #define LONG 271
197 #define ULONG 272
198 #define FLOAT 273
199 #define DOUBLE 274
200 #define TYPE 275
201 #define LABEL 276
202 #define VAR_ID 277
203 #define LABELSTR 278
204 #define STRINGCONSTANT 279
205 #define IMPLEMENTATION 280
206 #define ZEROINITIALIZER 281
207 #define TRUETOK 282
208 #define FALSETOK 283
209 #define BEGINTOK 284
210 #define ENDTOK 285
211 #define DECLARE 286
212 #define GLOBAL 287
213 #define CONSTANT 288
214 #define SECTION 289
215 #define VOLATILE 290
216 #define TO 291
217 #define DOTDOTDOT 292
218 #define NULL_TOK 293
219 #define UNDEF 294
220 #define CONST 295
221 #define INTERNAL 296
222 #define LINKONCE 297
223 #define WEAK 298
224 #define APPENDING 299
225 #define DLLIMPORT 300
226 #define DLLEXPORT 301
227 #define EXTERN_WEAK 302
228 #define OPAQUE 303
229 #define NOT 304
230 #define EXTERNAL 305
231 #define TARGET 306
232 #define TRIPLE 307
233 #define ENDIAN 308
234 #define POINTERSIZE 309
235 #define LITTLE 310
236 #define BIG 311
237 #define ALIGN 312
238 #define DEPLIBS 313
239 #define CALL 314
240 #define TAIL 315
241 #define ASM_TOK 316
242 #define MODULE 317
243 #define SIDEEFFECT 318
244 #define CC_TOK 319
245 #define CCC_TOK 320
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
252 #define RET 327
253 #define BR 328
254 #define SWITCH 329
255 #define INVOKE 330
256 #define UNWIND 331
257 #define UNREACHABLE 332
258 #define ADD 333
259 #define SUB 334
260 #define MUL 335
261 #define UDIV 336
262 #define SDIV 337
263 #define FDIV 338
264 #define UREM 339
265 #define SREM 340
266 #define FREM 341
267 #define AND 342
268 #define OR 343
269 #define XOR 344
270 #define SETLE 345
271 #define SETGE 346
272 #define SETLT 347
273 #define SETGT 348
274 #define SETEQ 349
275 #define SETNE 350
276 #define ICMP 351
277 #define FCMP 352
278 #define EQ 353
279 #define NE 354
280 #define SLT 355
281 #define SGT 356
282 #define SLE 357
283 #define SGE 358
284 #define ULT 359
285 #define UGT 360
286 #define ULE 361
287 #define UGE 362
288 #define ORDEQ 363
289 #define ORDNE 364
290 #define ORDLT 365
291 #define ORDGT 366
292 #define ORDLE 367
293 #define ORDGE 368
294 #define ORD 369
295 #define UNO 370
296 #define UNOEQ 371
297 #define UNONE 372
298 #define UNOLT 373
299 #define UNOGT 374
300 #define UNOLE 375
301 #define UNOGE 376
302 #define MALLOC 377
303 #define ALLOCA 378
304 #define FREE 379
305 #define LOAD 380
306 #define STORE 381
307 #define GETELEMENTPTR 382
308 #define TRUNC 383
309 #define ZEXT 384
310 #define SEXT 385
311 #define FPTRUNC 386
312 #define FPEXT 387
313 #define BITCAST 388
314 #define UITOFP 389
315 #define SITOFP 390
316 #define FPTOUI 391
317 #define FPTOSI 392
318 #define INTTOPTR 393
319 #define PTRTOINT 394
320 #define PHI_TOK 395
321 #define SELECT 396
322 #define SHL 397
323 #define LSHR 398
324 #define ASHR 399
325 #define VAARG 400
326 #define EXTRACTELEMENT 401
327 #define INSERTELEMENT 402
328 #define SHUFFLEVECTOR 403
329 #define VAARG_old 404
330 #define VANEXT_old 405
331
332
333
334
335 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
336 #line 968 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
337 typedef union YYSTYPE {
338   llvm::Module                           *ModuleVal;
339   llvm::Function                         *FunctionVal;
340   std::pair<llvm::PATypeHolder*, char*>  *ArgVal;
341   llvm::BasicBlock                       *BasicBlockVal;
342   llvm::TerminatorInst                   *TermInstVal;
343   llvm::Instruction                      *InstVal;
344   llvm::Constant                         *ConstVal;
345
346   const llvm::Type                       *PrimType;
347   llvm::PATypeHolder                     *TypeVal;
348   llvm::Value                            *ValueVal;
349
350   std::vector<std::pair<llvm::PATypeHolder*,char*> > *ArgList;
351   std::vector<llvm::Value*>              *ValueList;
352   std::list<llvm::PATypeHolder>          *TypeList;
353   // Represent the RHS of PHI node
354   std::list<std::pair<llvm::Value*,
355                       llvm::BasicBlock*> > *PHIList;
356   std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
357   std::vector<llvm::Constant*>           *ConstVector;
358
359   llvm::GlobalValue::LinkageTypes         Linkage;
360   int64_t                           SInt64Val;
361   uint64_t                          UInt64Val;
362   int                               SIntVal;
363   unsigned                          UIntVal;
364   double                            FPVal;
365   bool                              BoolVal;
366
367   char                             *StrVal;   // This memory is strdup'd!
368   llvm::ValID                       ValIDVal; // strdup'd memory maybe!
369
370   llvm::Instruction::BinaryOps      BinaryOpVal;
371   llvm::Instruction::TermOps        TermOpVal;
372   llvm::Instruction::MemoryOps      MemOpVal;
373   llvm::Instruction::CastOps        CastOpVal;
374   llvm::Instruction::OtherOps       OtherOpVal;
375   llvm::Module::Endianness          Endianness;
376   llvm::ICmpInst::Predicate         IPredicate;
377   llvm::FCmpInst::Predicate         FPredicate;
378 } YYSTYPE;
379 /* Line 1447 of yacc.c.  */
380 #line 381 "llvmAsmParser.tab.h"
381 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
382 # define YYSTYPE_IS_DECLARED 1
383 # define YYSTYPE_IS_TRIVIAL 1
384 #endif
385
386 extern YYSTYPE llvmAsmlval;
387
388
389