blob: fa719dd364c20dcb64089028a3e04efdd19f2cb1 [file] [log] [blame]
Reid Spencere7c3c602006-11-30 06:36:44 +00001/* 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 {
Reid Spencerf2d55322006-12-01 21:52:30 +000032 VOID = 258,
33 BOOL = 259,
34 SBYTE = 260,
35 UBYTE = 261,
36 SHORT = 262,
37 USHORT = 263,
38 INT = 264,
39 UINT = 265,
40 LONG = 266,
41 ULONG = 267,
42 FLOAT = 268,
43 DOUBLE = 269,
44 LABEL = 270,
45 OPAQUE = 271,
46 ESINT64VAL = 272,
47 EUINT64VAL = 273,
48 SINTVAL = 274,
49 UINTVAL = 275,
50 FPVAL = 276,
51 NULL_TOK = 277,
52 UNDEF = 278,
53 ZEROINITIALIZER = 279,
54 TRUETOK = 280,
55 FALSETOK = 281,
Reid Spencere77e35e2006-12-01 20:26:20 +000056 TYPE = 282,
57 VAR_ID = 283,
58 LABELSTR = 284,
59 STRINGCONSTANT = 285,
60 IMPLEMENTATION = 286,
61 BEGINTOK = 287,
62 ENDTOK = 288,
63 DECLARE = 289,
64 GLOBAL = 290,
65 CONSTANT = 291,
66 SECTION = 292,
67 VOLATILE = 293,
68 TO = 294,
69 DOTDOTDOT = 295,
70 CONST = 296,
71 INTERNAL = 297,
72 LINKONCE = 298,
73 WEAK = 299,
Reid Spencere7c3c602006-11-30 06:36:44 +000074 DLLIMPORT = 300,
75 DLLEXPORT = 301,
76 EXTERN_WEAK = 302,
Reid Spencere77e35e2006-12-01 20:26:20 +000077 APPENDING = 303,
Reid Spencere7c3c602006-11-30 06:36:44 +000078 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,
Reid Spencer78720742006-12-02 20:21:22 +000087 UNINITIALIZED = 313,
88 DEPLIBS = 314,
89 CALL = 315,
90 TAIL = 316,
91 ASM_TOK = 317,
92 MODULE = 318,
93 SIDEEFFECT = 319,
94 CC_TOK = 320,
95 CCC_TOK = 321,
96 CSRETCC_TOK = 322,
97 FASTCC_TOK = 323,
98 COLDCC_TOK = 324,
99 X86_STDCALLCC_TOK = 325,
100 X86_FASTCALLCC_TOK = 326,
101 DATALAYOUT = 327,
102 RET = 328,
103 BR = 329,
104 SWITCH = 330,
105 INVOKE = 331,
106 EXCEPT = 332,
107 UNWIND = 333,
108 UNREACHABLE = 334,
109 ADD = 335,
110 SUB = 336,
111 MUL = 337,
112 DIV = 338,
113 UDIV = 339,
114 SDIV = 340,
115 FDIV = 341,
116 REM = 342,
117 UREM = 343,
118 SREM = 344,
119 FREM = 345,
120 AND = 346,
121 OR = 347,
122 XOR = 348,
123 SETLE = 349,
124 SETGE = 350,
125 SETLT = 351,
126 SETGT = 352,
127 SETEQ = 353,
128 SETNE = 354,
129 MALLOC = 355,
130 ALLOCA = 356,
131 FREE = 357,
132 LOAD = 358,
133 STORE = 359,
134 GETELEMENTPTR = 360,
135 PHI_TOK = 361,
136 SELECT = 362,
137 SHL = 363,
138 SHR = 364,
139 ASHR = 365,
140 LSHR = 366,
141 VAARG = 367,
142 EXTRACTELEMENT = 368,
143 INSERTELEMENT = 369,
144 SHUFFLEVECTOR = 370,
145 CAST = 371,
146 TRUNC = 372,
147 ZEXT = 373,
148 SEXT = 374,
149 FPTRUNC = 375,
150 FPEXT = 376,
151 FPTOUI = 377,
152 FPTOSI = 378,
153 UITOFP = 379,
154 SITOFP = 380,
155 PTRTOINT = 381,
156 INTTOPTR = 382,
157 BITCAST = 383
Reid Spencere7c3c602006-11-30 06:36:44 +0000158 };
159#endif
160/* Tokens. */
Reid Spencerf2d55322006-12-01 21:52:30 +0000161#define VOID 258
162#define BOOL 259
163#define SBYTE 260
164#define UBYTE 261
165#define SHORT 262
166#define USHORT 263
167#define INT 264
168#define UINT 265
169#define LONG 266
170#define ULONG 267
171#define FLOAT 268
172#define DOUBLE 269
173#define LABEL 270
174#define OPAQUE 271
175#define ESINT64VAL 272
176#define EUINT64VAL 273
177#define SINTVAL 274
178#define UINTVAL 275
179#define FPVAL 276
180#define NULL_TOK 277
181#define UNDEF 278
182#define ZEROINITIALIZER 279
183#define TRUETOK 280
184#define FALSETOK 281
Reid Spencere77e35e2006-12-01 20:26:20 +0000185#define TYPE 282
186#define VAR_ID 283
187#define LABELSTR 284
188#define STRINGCONSTANT 285
189#define IMPLEMENTATION 286
190#define BEGINTOK 287
191#define ENDTOK 288
192#define DECLARE 289
193#define GLOBAL 290
194#define CONSTANT 291
195#define SECTION 292
196#define VOLATILE 293
197#define TO 294
198#define DOTDOTDOT 295
199#define CONST 296
200#define INTERNAL 297
201#define LINKONCE 298
202#define WEAK 299
Reid Spencere7c3c602006-11-30 06:36:44 +0000203#define DLLIMPORT 300
204#define DLLEXPORT 301
205#define EXTERN_WEAK 302
Reid Spencere77e35e2006-12-01 20:26:20 +0000206#define APPENDING 303
Reid Spencere7c3c602006-11-30 06:36:44 +0000207#define NOT 304
208#define EXTERNAL 305
209#define TARGET 306
210#define TRIPLE 307
211#define ENDIAN 308
212#define POINTERSIZE 309
213#define LITTLE 310
214#define BIG 311
215#define ALIGN 312
Reid Spencer78720742006-12-02 20:21:22 +0000216#define UNINITIALIZED 313
217#define DEPLIBS 314
218#define CALL 315
219#define TAIL 316
220#define ASM_TOK 317
221#define MODULE 318
222#define SIDEEFFECT 319
223#define CC_TOK 320
224#define CCC_TOK 321
225#define CSRETCC_TOK 322
226#define FASTCC_TOK 323
227#define COLDCC_TOK 324
228#define X86_STDCALLCC_TOK 325
229#define X86_FASTCALLCC_TOK 326
230#define DATALAYOUT 327
231#define RET 328
232#define BR 329
233#define SWITCH 330
234#define INVOKE 331
235#define EXCEPT 332
236#define UNWIND 333
237#define UNREACHABLE 334
238#define ADD 335
239#define SUB 336
240#define MUL 337
241#define DIV 338
242#define UDIV 339
243#define SDIV 340
244#define FDIV 341
245#define REM 342
246#define UREM 343
247#define SREM 344
248#define FREM 345
249#define AND 346
250#define OR 347
251#define XOR 348
252#define SETLE 349
253#define SETGE 350
254#define SETLT 351
255#define SETGT 352
256#define SETEQ 353
257#define SETNE 354
258#define MALLOC 355
259#define ALLOCA 356
260#define FREE 357
261#define LOAD 358
262#define STORE 359
263#define GETELEMENTPTR 360
264#define PHI_TOK 361
265#define SELECT 362
266#define SHL 363
267#define SHR 364
268#define ASHR 365
269#define LSHR 366
270#define VAARG 367
271#define EXTRACTELEMENT 368
272#define INSERTELEMENT 369
273#define SHUFFLEVECTOR 370
274#define CAST 371
275#define TRUNC 372
276#define ZEXT 373
277#define SEXT 374
278#define FPTRUNC 375
279#define FPEXT 376
280#define FPTOUI 377
281#define FPTOSI 378
282#define UITOFP 379
283#define SITOFP 380
284#define PTRTOINT 381
285#define INTTOPTR 382
286#define BITCAST 383
Reid Spencere7c3c602006-11-30 06:36:44 +0000287
288
289
290
291#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
Reid Spencer78720742006-12-02 20:21:22 +0000292#line 239 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeParser.y"
Reid Spencere77e35e2006-12-01 20:26:20 +0000293typedef union YYSTYPE {
294 std::string* String;
295 TypeInfo Type;
296 ValueInfo Value;
297 ConstInfo Const;
Reid Spencerf8483652006-12-02 15:16:01 +0000298 ValueList* ValList;
Reid Spencere77e35e2006-12-01 20:26:20 +0000299} YYSTYPE;
300/* Line 1447 of yacc.c. */
Reid Spencer78720742006-12-02 20:21:22 +0000301#line 302 "UpgradeParser.tab.h"
Reid Spencere7c3c602006-11-30 06:36:44 +0000302# define yystype YYSTYPE /* obsolescent; will be withdrawn */
303# define YYSTYPE_IS_DECLARED 1
304# define YYSTYPE_IS_TRIVIAL 1
305#endif
306
307extern YYSTYPE Upgradelval;
308
309
310