ROSE  0.9.9.139
ompparser.hh
1 /* A Bison parser, made by GNU Bison 3.0.4. */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5  Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6 
7  This program is free software: you can redistribute it and/or modify
8  it under the terms of the GNU General Public License as published by
9  the Free Software Foundation, either version 3 of the License, or
10  (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program. If not, see <http://www.gnu.org/licenses/>. */
19 
20 /* As a special exception, you may create a larger work that contains
21  part or all of the Bison parser skeleton and distribute that work
22  under terms of your choice, so long as that work isn't itself a
23  parser generator using the skeleton or a modified version thereof
24  as a parser skeleton. Alternatively, if you modify or redistribute
25  the parser skeleton itself, you may (at your option) remove this
26  special exception, which will cause the skeleton and the resulting
27  Bison output files to be licensed under the GNU General Public
28  License without this special exception.
29 
30  This special exception was added by the Free Software Foundation in
31  version 2.2 of Bison. */
32 
33 #ifndef YY_OMP_OMPPARSER_HH_INCLUDED
34 # define YY_OMP_OMPPARSER_HH_INCLUDED
35 /* Debug traces. */
36 #ifndef YYDEBUG
37 # define YYDEBUG 0
38 #endif
39 #if YYDEBUG
40 extern int omp_debug;
41 #endif
42 
43 /* Token type. */
44 #ifndef YYTOKENTYPE
45 # define YYTOKENTYPE
46  enum yytokentype
47  {
48  OMP = 258,
49  PARALLEL = 259,
50  IF = 260,
51  NUM_THREADS = 261,
52  ORDERED = 262,
53  SCHEDULE = 263,
54  STATIC = 264,
55  DYNAMIC = 265,
56  GUIDED = 266,
57  RUNTIME = 267,
58  SECTIONS = 268,
59  SINGLE = 269,
60  NOWAIT = 270,
61  SECTION = 271,
62  FOR = 272,
63  MASTER = 273,
64  CRITICAL = 274,
65  BARRIER = 275,
66  ATOMIC = 276,
67  FLUSH = 277,
68  TARGET = 278,
69  UPDATE = 279,
70  DIST_DATA = 280,
71  BLOCK = 281,
72  DUPLICATE = 282,
73  CYCLIC = 283,
74  THREADPRIVATE = 284,
75  PRIVATE = 285,
76  COPYPRIVATE = 286,
77  FIRSTPRIVATE = 287,
78  LASTPRIVATE = 288,
79  SHARED = 289,
80  DEFAULT = 290,
81  NONE = 291,
82  REDUCTION = 292,
83  COPYIN = 293,
84  TASK = 294,
85  TASKWAIT = 295,
86  UNTIED = 296,
87  COLLAPSE = 297,
88  AUTO = 298,
89  DECLARE = 299,
90  DATA = 300,
91  DEVICE = 301,
92  MAP = 302,
93  ALLOC = 303,
94  TO = 304,
95  FROM = 305,
96  TOFROM = 306,
97  PROC_BIND = 307,
98  CLOSE = 308,
99  SPREAD = 309,
100  SIMD = 310,
101  SAFELEN = 311,
102  ALIGNED = 312,
103  LINEAR = 313,
104  UNIFORM = 314,
105  INBRANCH = 315,
106  NOTINBRANCH = 316,
107  MPI = 317,
108  MPI_ALL = 318,
109  MPI_MASTER = 319,
110  TARGET_BEGIN = 320,
111  TARGET_END = 321,
112  LOGAND = 322,
113  LOGOR = 323,
114  SHLEFT = 324,
115  SHRIGHT = 325,
116  PLUSPLUS = 326,
117  MINUSMINUS = 327,
118  PTR_TO = 328,
119  LE_OP2 = 329,
120  GE_OP2 = 330,
121  EQ_OP2 = 331,
122  NE_OP2 = 332,
123  RIGHT_ASSIGN2 = 333,
124  LEFT_ASSIGN2 = 334,
125  ADD_ASSIGN2 = 335,
126  SUB_ASSIGN2 = 336,
127  MUL_ASSIGN2 = 337,
128  DIV_ASSIGN2 = 338,
129  MOD_ASSIGN2 = 339,
130  AND_ASSIGN2 = 340,
131  XOR_ASSIGN2 = 341,
132  OR_ASSIGN2 = 342,
133  DEPEND = 343,
134  IN = 344,
135  OUT = 345,
136  INOUT = 346,
137  MERGEABLE = 347,
138  LEXICALERROR = 348,
139  IDENTIFIER = 349,
140  READ = 350,
141  WRITE = 351,
142  CAPTURE = 352,
143  SIMDLEN = 353,
144  FINAL = 354,
145  PRIORITY = 355,
146  ICONSTANT = 356,
147  EXPRESSION = 357,
148  ID_EXPRESSION = 358
149  };
150 #endif
151 /* Tokens. */
152 #define OMP 258
153 #define PARALLEL 259
154 #define IF 260
155 #define NUM_THREADS 261
156 #define ORDERED 262
157 #define SCHEDULE 263
158 #define STATIC 264
159 #define DYNAMIC 265
160 #define GUIDED 266
161 #define RUNTIME 267
162 #define SECTIONS 268
163 #define SINGLE 269
164 #define NOWAIT 270
165 #define SECTION 271
166 #define FOR 272
167 #define MASTER 273
168 #define CRITICAL 274
169 #define BARRIER 275
170 #define ATOMIC 276
171 #define FLUSH 277
172 #define TARGET 278
173 #define UPDATE 279
174 #define DIST_DATA 280
175 #define BLOCK 281
176 #define DUPLICATE 282
177 #define CYCLIC 283
178 #define THREADPRIVATE 284
179 #define PRIVATE 285
180 #define COPYPRIVATE 286
181 #define FIRSTPRIVATE 287
182 #define LASTPRIVATE 288
183 #define SHARED 289
184 #define DEFAULT 290
185 #define NONE 291
186 #define REDUCTION 292
187 #define COPYIN 293
188 #define TASK 294
189 #define TASKWAIT 295
190 #define UNTIED 296
191 #define COLLAPSE 297
192 #define AUTO 298
193 #define DECLARE 299
194 #define DATA 300
195 #define DEVICE 301
196 #define MAP 302
197 #define ALLOC 303
198 #define TO 304
199 #define FROM 305
200 #define TOFROM 306
201 #define PROC_BIND 307
202 #define CLOSE 308
203 #define SPREAD 309
204 #define SIMD 310
205 #define SAFELEN 311
206 #define ALIGNED 312
207 #define LINEAR 313
208 #define UNIFORM 314
209 #define INBRANCH 315
210 #define NOTINBRANCH 316
211 #define MPI 317
212 #define MPI_ALL 318
213 #define MPI_MASTER 319
214 #define TARGET_BEGIN 320
215 #define TARGET_END 321
216 #define LOGAND 322
217 #define LOGOR 323
218 #define SHLEFT 324
219 #define SHRIGHT 325
220 #define PLUSPLUS 326
221 #define MINUSMINUS 327
222 #define PTR_TO 328
223 #define LE_OP2 329
224 #define GE_OP2 330
225 #define EQ_OP2 331
226 #define NE_OP2 332
227 #define RIGHT_ASSIGN2 333
228 #define LEFT_ASSIGN2 334
229 #define ADD_ASSIGN2 335
230 #define SUB_ASSIGN2 336
231 #define MUL_ASSIGN2 337
232 #define DIV_ASSIGN2 338
233 #define MOD_ASSIGN2 339
234 #define AND_ASSIGN2 340
235 #define XOR_ASSIGN2 341
236 #define OR_ASSIGN2 342
237 #define DEPEND 343
238 #define IN 344
239 #define OUT 345
240 #define INOUT 346
241 #define MERGEABLE 347
242 #define LEXICALERROR 348
243 #define IDENTIFIER 349
244 #define READ 350
245 #define WRITE 351
246 #define CAPTURE 352
247 #define SIMDLEN 353
248 #define FINAL 354
249 #define PRIORITY 355
250 #define ICONSTANT 356
251 #define EXPRESSION 357
252 #define ID_EXPRESSION 358
253 
254 /* Value type. */
255 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
256 
257 union YYSTYPE
258 {
259 #line 96 "/export/tmp.rose-mgr/applications/jenkins/data/1.0.0/jobs/release-ROSE-docs/workspace/src/frontend/SageIII/ompparser.yy" /* yacc.c:1909 */
260  int itype;
261  double ftype;
262  const char* stype;
263  void* ptype; /* For expressions */
264 
265 
266 #line 267 "ompparser.hh" /* yacc.c:1909 */
267 };
268 
269 typedef union YYSTYPE YYSTYPE;
270 # define YYSTYPE_IS_TRIVIAL 1
271 # define YYSTYPE_IS_DECLARED 1
272 #endif
273 
274 
275 extern YYSTYPE omp_lval;
276 
277 int omp_parse (void);
278 
279 #endif /* !YY_OMP_OMPPARSER_HH_INCLUDED */