panama tools and demos
[panamaz] / src / tree-codes.h
1 /*
2 Taken from gcc plugin/tree.defs
3
4 GCC is free software; you can redistribute it and/or modify it under
5 the terms of the GNU General Public License as published by the Free
6 Software Foundation; either version 3, or (at your option) any later
7 version.
8
9 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
10 WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12 for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with GCC; see the file COPYING3.  If not see
16 <http://www.gnu.org/licenses/>.  */
17
18 const char *tree_codes[] = {
19         "ERROR_MARK",
20 "IDENTIFIER_NODE",
21 "TREE_LIST",
22 "TREE_VEC",
23 "BLOCK",
24 "OFFSET_TYPE",
25 "ENUMERAL_TYPE",
26 "BOOLEAN_TYPE",
27 "INTEGER_TYPE",
28 "REAL_TYPE",
29 "POINTER_TYPE",
30 "REFERENCE_TYPE",
31 "NULLPTR_TYPE",
32 "FIXED_POINT_TYPE",
33 "COMPLEX_TYPE",
34 "VECTOR_TYPE",
35 "ARRAY_TYPE",
36 "RECORD_TYPE",
37 "UNION_TYPE",
38 "QUAL_UNION_TYPE",
39 "VOID_TYPE",
40 "FUNCTION_TYPE",
41 "METHOD_TYPE",
42 "LANG_TYPE",
43 "VOID_CST",
44 "INTEGER_CST",
45 "POLY_INT_CST",
46 "REAL_CST",
47 "FIXED_CST",
48 "COMPLEX_CST",
49 "VECTOR_CST",
50 "STRING_CST",
51 "FUNCTION_DECL",
52 "LABEL_DECL",
53 "FIELD_DECL",
54 "VAR_DECL",
55 "CONST_DECL",
56 "PARM_DECL",
57 "TYPE_DECL",
58 "RESULT_DECL",
59 "DEBUG_EXPR_DECL",
60 "DEBUG_BEGIN_STMT",
61 "NAMESPACE_DECL",
62 "IMPORTED_DECL",
63 "NAMELIST_DECL",
64 "TRANSLATION_UNIT_DECL",
65 "COMPONENT_REF",
66 "BIT_FIELD_REF",
67 "ARRAY_REF",
68 "ARRAY_RANGE_REF",
69 "REALPART_EXPR",
70 "IMAGPART_EXPR",
71 "VIEW_CONVERT_EXPR",
72 "INDIRECT_REF",
73 "OBJ_TYPE_REF",
74 "CONSTRUCTOR",
75 "COMPOUND_EXPR",
76 "MODIFY_EXPR",
77 "INIT_EXPR",
78 "TARGET_EXPR",
79 "COND_EXPR",
80 "VEC_DUPLICATE_EXPR",
81 "VEC_SERIES_EXPR",
82 "VEC_COND_EXPR",
83 "VEC_PERM_EXPR",
84 "BIND_EXPR",
85 "CALL_EXPR",
86 "WITH_CLEANUP_EXPR",
87 "CLEANUP_POINT_EXPR",
88 "PLACEHOLDER_EXPR",
89 "PLUS_EXPR",
90 "MINUS_EXPR",
91 "MULT_EXPR",
92 "POINTER_PLUS_EXPR",
93 "POINTER_DIFF_EXPR",
94 "MULT_HIGHPART_EXPR",
95 "TRUNC_DIV_EXPR",
96 "CEIL_DIV_EXPR",
97 "FLOOR_DIV_EXPR",
98 "ROUND_DIV_EXPR",
99 "TRUNC_MOD_EXPR",
100 "CEIL_MOD_EXPR",
101 "FLOOR_MOD_EXPR",
102 "ROUND_MOD_EXPR",
103 "RDIV_EXPR",
104 "EXACT_DIV_EXPR",
105 "FIX_TRUNC_EXPR",
106 "FLOAT_EXPR",
107 "NEGATE_EXPR",
108 "MIN_EXPR",
109 "MAX_EXPR",
110 "ABS_EXPR",
111 "ABSU_EXPR",
112 "LSHIFT_EXPR",
113 "RSHIFT_EXPR",
114 "LROTATE_EXPR",
115 "RROTATE_EXPR",
116 "BIT_IOR_EXPR",
117 "BIT_XOR_EXPR",
118 "BIT_AND_EXPR",
119 "BIT_NOT_EXPR",
120 "TRUTH_ANDIF_EXPR",
121 "TRUTH_ORIF_EXPR",
122 "TRUTH_AND_EXPR",
123 "TRUTH_OR_EXPR",
124 "TRUTH_XOR_EXPR",
125 "TRUTH_NOT_EXPR",
126 "LT_EXPR",
127 "LE_EXPR",
128 "GT_EXPR",
129 "GE_EXPR",
130 "EQ_EXPR",
131 "NE_EXPR",
132 "UNORDERED_EXPR",
133 "ORDERED_EXPR",
134 "UNLT_EXPR",
135 "UNLE_EXPR",
136 "UNGT_EXPR",
137 "UNGE_EXPR",
138 "UNEQ_EXPR",
139 "LTGT_EXPR",
140 "RANGE_EXPR",
141 "PAREN_EXPR",
142 "CONVERT_EXPR",
143 "ADDR_SPACE_CONVERT_EXPR",
144 "FIXED_CONVERT_EXPR",
145 "NOP_EXPR",
146 "NON_LVALUE_EXPR",
147 "COMPOUND_LITERAL_EXPR",
148 "SAVE_EXPR",
149 "ADDR_EXPR",
150 "FDESC_EXPR",
151 "BIT_INSERT_EXPR",
152 "COMPLEX_EXPR",
153 "CONJ_EXPR",
154 "PREDECREMENT_EXPR",
155 "PREINCREMENT_EXPR",
156 "POSTDECREMENT_EXPR",
157 "POSTINCREMENT_EXPR",
158 "VA_ARG_EXPR",
159 "TRY_CATCH_EXPR",
160 "TRY_FINALLY_EXPR",
161 "DECL_EXPR",
162 "LABEL_EXPR",
163 "GOTO_EXPR",
164 "RETURN_EXPR",
165 "EXIT_EXPR",
166 "LOOP_EXPR",
167 "SWITCH_EXPR",
168 "CASE_LABEL_EXPR",
169 "ASM_EXPR",
170 "SSA_NAME",
171 "CATCH_EXPR",
172 "EH_FILTER_EXPR",
173 "SCEV_KNOWN",
174 "SCEV_NOT_KNOWN",
175 "POLYNOMIAL_CHREC",
176 "STATEMENT_LIST",
177 "ASSERT_EXPR",
178 "TREE_BINFO",
179 "WITH_SIZE_EXPR",
180 "REALIGN_LOAD_EXPR",
181 "TARGET_MEM_REF",
182 "MEM_REF",
183 "OACC_PARALLEL",
184 "OACC_KERNELS",
185 "OACC_DATA",
186 "OACC_HOST_DATA",
187 "OMP_PARALLEL",
188 "OMP_TASK",
189 "OMP_FOR",
190 "OMP_SIMD",
191 "OMP_DISTRIBUTE",
192 "OMP_TASKLOOP",
193 "OACC_LOOP",
194 "OMP_TEAMS",
195 "OMP_TARGET_DATA",
196 "OMP_TARGET",
197 "OMP_SECTIONS",
198 "OMP_ORDERED",
199 "OMP_CRITICAL",
200 "OMP_SINGLE",
201 "OMP_TASKGROUP",
202 "OMP_SECTION",
203 "OMP_MASTER",
204 "OACC_CACHE",
205 "OACC_DECLARE",
206 "OACC_ENTER_DATA",
207 "OACC_EXIT_DATA",
208 "OACC_UPDATE",
209 "OMP_TARGET_UPDATE",
210 "OMP_TARGET_ENTER_DATA",
211 "OMP_TARGET_EXIT_DATA",
212 "OMP_ATOMIC",
213 "OMP_ATOMIC_READ",
214 "OMP_ATOMIC_CAPTURE_OLD",
215 "OMP_ATOMIC_CAPTURE_NEW",
216 "OMP_CLAUSE",
217 "TRANSACTION_EXPR",
218 "DOT_PROD_EXPR",
219 "WIDEN_SUM_EXPR",
220 "SAD_EXPR",
221 "WIDEN_MULT_EXPR",
222 "WIDEN_MULT_PLUS_EXPR",
223 "WIDEN_MULT_MINUS_EXPR",
224 "WIDEN_LSHIFT_EXPR",
225 "VEC_WIDEN_MULT_HI_EXPR",
226 "VEC_WIDEN_MULT_LO_EXPR",
227 "VEC_WIDEN_MULT_EVEN_EXPR",
228 "VEC_WIDEN_MULT_ODD_EXPR",
229 "VEC_UNPACK_HI_EXPR",
230 "VEC_UNPACK_LO_EXPR",
231 "VEC_UNPACK_FLOAT_HI_EXPR",
232 "VEC_UNPACK_FLOAT_LO_EXPR",
233 "VEC_UNPACK_FIX_TRUNC_HI_EXPR",
234 "VEC_UNPACK_FIX_TRUNC_LO_EXPR",
235 "VEC_PACK_TRUNC_EXPR",
236 "VEC_PACK_SAT_EXPR",
237 "VEC_PACK_FIX_TRUNC_EXPR",
238 "VEC_PACK_FLOAT_EXPR",
239 "VEC_WIDEN_LSHIFT_HI_EXPR",
240 "VEC_WIDEN_LSHIFT_LO_EXPR",
241 "PREDICT_EXPR",
242 "OPTIMIZATION_NODE",
243 "TARGET_OPTION_NODE",
244 "ANNOTATE_EXPR",
245 "LAST_AND_UNUSED_TREE_CODE",
246 "C_MAYBE_CONST_EXPR",
247 "EXCESS_PRECISION_EXPR",
248 "USERDEF_LITERAL",
249 "SIZEOF_EXPR",
250 "UNCONSTRAINED_ARRAY_TYPE",
251 "UNCONSTRAINED_ARRAY_REF",
252 "NULL_EXPR",
253 "PLUS_NOMOD_EXPR",
254 "MINUS_NOMOD_EXPR",
255 "POWER_EXPR",
256 "ATTR_ADDR_EXPR",
257 "STMT_STMT",
258 "LOOP_STMT",
259 "EXIT_STMT",
260 "OFFSET_REF",
261 "PTRMEM_CST",
262 "NEW_EXPR",
263 "VEC_NEW_EXPR",
264 "DELETE_EXPR",
265 "VEC_DELETE_EXPR",
266 "SCOPE_REF",
267 "MEMBER_REF",
268 "TYPE_EXPR",
269 "AGGR_INIT_EXPR",
270 "VEC_INIT_EXPR",
271 "THROW_EXPR",
272 "EMPTY_CLASS_EXPR",
273 "BASELINK",
274 "TEMPLATE_DECL",
275 "TEMPLATE_PARM_INDEX",
276 "TEMPLATE_TEMPLATE_PARM",
277 "TEMPLATE_TYPE_PARM",
278 "TYPENAME_TYPE",
279 "TYPEOF_TYPE",
280 "BOUND_TEMPLATE_TEMPLATE_PARM",
281 "UNBOUND_CLASS_TEMPLATE",
282 "USING_DECL",
283 "USING_STMT",
284 "DEFAULT_ARG",
285 "DEFERRED_NOEXCEPT",
286 "TEMPLATE_ID_EXPR",
287 "OVERLOAD",
288 "PSEUDO_DTOR_EXPR",
289 "MODOP_EXPR",
290 "CAST_EXPR",
291 "REINTERPRET_CAST_EXPR",
292 "CONST_CAST_EXPR",
293 "STATIC_CAST_EXPR",
294 "DYNAMIC_CAST_EXPR",
295 "IMPLICIT_CONV_EXPR",
296 "DOTSTAR_EXPR",
297 "TYPEID_EXPR",
298 "NOEXCEPT_EXPR",
299 "NON_DEPENDENT_EXPR",
300 "CTOR_INITIALIZER",
301 "TRY_BLOCK",
302 "EH_SPEC_BLOCK",
303 "HANDLER",
304 "MUST_NOT_THROW_EXPR",
305 "CLEANUP_STMT",
306 "IF_STMT",
307 "FOR_STMT",
308 "RANGE_FOR_STMT",
309 "WHILE_STMT",
310 "DO_STMT",
311 "BREAK_STMT",
312 "CONTINUE_STMT",
313 "SWITCH_STMT",
314 "EXPR_STMT",
315 "TAG_DEFN",
316 "OFFSETOF_EXPR",
317 "ADDRESSOF_EXPR",
318 "ARROW_EXPR",
319 "ALIGNOF_EXPR",
320 "AT_ENCODE_EXPR",
321 "STMT_EXPR",
322 "UNARY_PLUS_EXPR",
323 "STATIC_ASSERT",
324 "TYPE_ARGUMENT_PACK",
325 "NONTYPE_ARGUMENT_PACK",
326 "TYPE_PACK_EXPANSION",
327 "EXPR_PACK_EXPANSION",
328 "ARGUMENT_PACK_SELECT",
329 "UNARY_LEFT_FOLD_EXPR",
330 "UNARY_RIGHT_FOLD_EXPR",
331 "BINARY_LEFT_FOLD_EXPR",
332 "BINARY_RIGHT_FOLD_EXPR",
333 "TRAIT_EXPR",
334 "LAMBDA_EXPR",
335 "DECLTYPE_TYPE",
336 "UNDERLYING_TYPE",
337 "BASES",
338 "TEMPLATE_INFO",
339 "OMP_DEPOBJ",
340 "CONSTRAINT_INFO",
341 "WILDCARD_DECL",
342 "REQUIRES_EXPR",
343 "SIMPLE_REQ",
344 "TYPE_REQ",
345 "COMPOUND_REQ",
346 "NESTED_REQ",
347 "PRED_CONSTR",
348 "CHECK_CONSTR",
349 "EXPR_CONSTR",
350 "TYPE_CONSTR",
351 "ICONV_CONSTR",
352 "DEDUCT_CONSTR",
353 "EXCEPT_CONSTR",
354 "PARM_CONSTR",
355 "CONJ_CONSTR",
356 "DISJ_CONSTR",
357 "UNSIGNED_RSHIFT_EXPR",
358 "FLOAT_MOD_EXPR",
359 "FUNCFRAME_INFO",
360 "CLASS_INTERFACE_TYPE",
361 "CLASS_IMPLEMENTATION_TYPE",
362 "CATEGORY_INTERFACE_TYPE",
363 "CATEGORY_IMPLEMENTATION_TYPE",
364 "PROTOCOL_INTERFACE_TYPE",
365 "KEYWORD_DECL",
366 "INSTANCE_METHOD_DECL",
367 "CLASS_METHOD_DECL",
368 "PROPERTY_DECL",
369 "MESSAGE_SEND_EXPR",
370 "CLASS_REFERENCE_EXPR",
371 "PROPERTY_REF",
372         };
373
374 #define ZTREE_CODE(x) tree_codes[TREE_CODE(x)]