PIPS
paf_ri.h
Go to the documentation of this file.
1 #ifndef _newgen_paf_ri_included
2 #define _newgen_paf_ri_included
3 #define _gen_paf_ri_start 232
4 /*
5  * THIS FILE HAS BEEN AUTOMATICALLY GENERATED BY NEWGEN.
6  *
7  * PLEASE DO NOT MODIFY IT.
8  */
9 
10 #if !defined(_newgen_reference_domain_defined_)
11 #define _newgen_reference_domain_defined_
12 #define REFERENCE_NEWGEN_DOMAIN (reference_domain)
13 #define reference_NEWGEN_DOMAIN (reference_domain)
15 #endif /* _newgen_reference_domain_defined_ */
16 
17 #if !defined(_newgen_predicate_domain_defined_)
18 #define _newgen_predicate_domain_defined_
19 #define PREDICATE_NEWGEN_DOMAIN (predicate_domain)
20 #define predicate_NEWGEN_DOMAIN (predicate_domain)
22 #endif /* _newgen_predicate_domain_defined_ */
23 
24 #if !defined(_newgen_expression_domain_defined_)
25 #define _newgen_expression_domain_defined_
26 #define EXPRESSION_NEWGEN_DOMAIN (expression_domain)
27 #define expression_NEWGEN_DOMAIN (expression_domain)
29 #endif /* _newgen_expression_domain_defined_ */
30 
31 #if !defined(_newgen_loop_domain_defined_)
32 #define _newgen_loop_domain_defined_
33 #define LOOP_NEWGEN_DOMAIN (loop_domain)
34 #define loop_NEWGEN_DOMAIN (loop_domain)
35 typedef struct _newgen_struct_loop_ * loop;
36 #endif /* _newgen_loop_domain_defined_ */
37 
38 #if !defined(_newgen_statement_domain_defined_)
39 #define _newgen_statement_domain_defined_
40 #define STATEMENT_NEWGEN_DOMAIN (statement_domain)
41 #define statement_NEWGEN_DOMAIN (statement_domain)
43 #endif /* _newgen_statement_domain_defined_ */
44 
45 #if !defined(_newgen_entity_domain_defined_)
46 #define _newgen_entity_domain_defined_
47 #define ENTITY_NEWGEN_DOMAIN (entity_domain)
48 #define entity_NEWGEN_DOMAIN (entity_domain)
49 typedef struct _newgen_struct_entity_ * entity;
50 #endif /* _newgen_entity_domain_defined_ */
51 
52 #if !defined(_newgen_sccflags_domain_defined_)
53 #define _newgen_sccflags_domain_defined_
54 #define SCCFLAGS_NEWGEN_DOMAIN (sccflags_domain)
55 #define sccflags_NEWGEN_DOMAIN (sccflags_domain)
57 #endif /* _newgen_sccflags_domain_defined_ */
58 
59 #if !defined(_newgen_Pvecteur_domain_defined_)
60 #define _newgen_Pvecteur_domain_defined_
61 #define newgen_Pvecteur(p) (p) /* old hack compatible */
62 #define PVECTEUR_NEWGEN_EXTERNAL (_gen_paf_ri_start+0)
63 #define PVECTEUR_NEWGEN_DOMAIN (PVECTEUR_NEWGEN_EXTERNAL)
64 #define Pvecteur_NEWGEN_DOMAIN (PVECTEUR_NEWGEN_EXTERNAL)
65 #endif /* _newgen_Pvecteur_domain_defined_ */
66 
67 #define bdt_domain (_gen_paf_ri_start+1)
68 #if !defined(_newgen_bdt_domain_defined_)
69 #define _newgen_bdt_domain_defined_
70 #define BDT_NEWGEN_DOMAIN (bdt_domain)
71 #define bdt_NEWGEN_DOMAIN (bdt_domain)
72 typedef struct _newgen_struct_bdt_ * bdt;
73 #endif /* _newgen_bdt_domain_defined_ */
74 
75 #define communication_domain (_gen_paf_ri_start+2)
76 #if !defined(_newgen_communication_domain_defined_)
77 #define _newgen_communication_domain_defined_
78 #define COMMUNICATION_NEWGEN_DOMAIN (communication_domain)
79 #define communication_NEWGEN_DOMAIN (communication_domain)
81 #endif /* _newgen_communication_domain_defined_ */
82 
83 #define conditional_domain (_gen_paf_ri_start+3)
84 #if !defined(_newgen_conditional_domain_defined_)
85 #define _newgen_conditional_domain_defined_
86 #define CONDITIONAL_NEWGEN_DOMAIN (conditional_domain)
87 #define conditional_NEWGEN_DOMAIN (conditional_domain)
89 #endif /* _newgen_conditional_domain_defined_ */
90 
91 #define dataflow_domain (_gen_paf_ri_start+4)
92 #if !defined(_newgen_dataflow_domain_defined_)
93 #define _newgen_dataflow_domain_defined_
94 #define DATAFLOW_NEWGEN_DOMAIN (dataflow_domain)
95 #define dataflow_NEWGEN_DOMAIN (dataflow_domain)
97 #endif /* _newgen_dataflow_domain_defined_ */
98 
99 #define dfg_arc_label_domain (_gen_paf_ri_start+5)
100 #if !defined(_newgen_dfg_arc_label_domain_defined_)
101 #define _newgen_dfg_arc_label_domain_defined_
102 #define DFG_ARC_LABEL_NEWGEN_DOMAIN (dfg_arc_label_domain)
103 #define dfg_arc_label_NEWGEN_DOMAIN (dfg_arc_label_domain)
105 #endif /* _newgen_dfg_arc_label_domain_defined_ */
106 
107 #define dfg_vertex_label_domain (_gen_paf_ri_start+6)
108 #if !defined(_newgen_dfg_vertex_label_domain_defined_)
109 #define _newgen_dfg_vertex_label_domain_defined_
110 #define DFG_VERTEX_LABEL_NEWGEN_DOMAIN (dfg_vertex_label_domain)
111 #define dfg_vertex_label_NEWGEN_DOMAIN (dfg_vertex_label_domain)
113 #endif /* _newgen_dfg_vertex_label_domain_defined_ */
114 
115 #define leaf_label_domain (_gen_paf_ri_start+7)
116 #if !defined(_newgen_leaf_label_domain_defined_)
117 #define _newgen_leaf_label_domain_defined_
118 #define LEAF_LABEL_NEWGEN_DOMAIN (leaf_label_domain)
119 #define leaf_label_NEWGEN_DOMAIN (leaf_label_domain)
121 #endif /* _newgen_leaf_label_domain_defined_ */
122 
123 #define lisp_expression_domain (_gen_paf_ri_start+8)
124 #if !defined(_newgen_lisp_expression_domain_defined_)
125 #define _newgen_lisp_expression_domain_defined_
126 #define LISP_EXPRESSION_NEWGEN_DOMAIN (lisp_expression_domain)
127 #define lisp_expression_NEWGEN_DOMAIN (lisp_expression_domain)
129 #endif /* _newgen_lisp_expression_domain_defined_ */
130 
131 #define placement_domain (_gen_paf_ri_start+9)
132 #if !defined(_newgen_placement_domain_defined_)
133 #define _newgen_placement_domain_defined_
134 #define PLACEMENT_NEWGEN_DOMAIN (placement_domain)
135 #define placement_NEWGEN_DOMAIN (placement_domain)
137 #endif /* _newgen_placement_domain_defined_ */
138 
139 #define plc_domain (_gen_paf_ri_start+10)
140 #if !defined(_newgen_plc_domain_defined_)
141 #define _newgen_plc_domain_defined_
142 #define PLC_NEWGEN_DOMAIN (plc_domain)
143 #define plc_NEWGEN_DOMAIN (plc_domain)
144 typedef struct _newgen_struct_plc_ * plc;
145 #endif /* _newgen_plc_domain_defined_ */
146 
147 #define quast_leaf_domain (_gen_paf_ri_start+11)
148 #if !defined(_newgen_quast_leaf_domain_defined_)
149 #define _newgen_quast_leaf_domain_defined_
150 #define QUAST_LEAF_NEWGEN_DOMAIN (quast_leaf_domain)
151 #define quast_leaf_NEWGEN_DOMAIN (quast_leaf_domain)
153 #endif /* _newgen_quast_leaf_domain_defined_ */
154 
155 #define quast_domain (_gen_paf_ri_start+12)
156 #if !defined(_newgen_quast_domain_defined_)
157 #define _newgen_quast_domain_defined_
158 #define QUAST_NEWGEN_DOMAIN (quast_domain)
159 #define quast_NEWGEN_DOMAIN (quast_domain)
160 typedef struct _newgen_struct_quast_ * quast;
161 #endif /* _newgen_quast_domain_defined_ */
162 
163 #define quast_value_domain (_gen_paf_ri_start+13)
164 #if !defined(_newgen_quast_value_domain_defined_)
165 #define _newgen_quast_value_domain_defined_
166 #define QUAST_VALUE_NEWGEN_DOMAIN (quast_value_domain)
167 #define quast_value_NEWGEN_DOMAIN (quast_value_domain)
169 #endif /* _newgen_quast_value_domain_defined_ */
170 
171 #define schedule_domain (_gen_paf_ri_start+14)
172 #if !defined(_newgen_schedule_domain_defined_)
173 #define _newgen_schedule_domain_defined_
174 #define SCHEDULE_NEWGEN_DOMAIN (schedule_domain)
175 #define schedule_NEWGEN_DOMAIN (schedule_domain)
177 #endif /* _newgen_schedule_domain_defined_ */
178 
179 #define static_control_domain (_gen_paf_ri_start+15)
180 #if !defined(_newgen_static_control_domain_defined_)
181 #define _newgen_static_control_domain_defined_
182 #define STATIC_CONTROL_NEWGEN_DOMAIN (static_control_domain)
183 #define static_control_NEWGEN_DOMAIN (static_control_domain)
185 #endif /* _newgen_static_control_domain_defined_ */
186 
187 #define var_val_domain (_gen_paf_ri_start+16)
188 #if !defined(_newgen_var_val_domain_defined_)
189 #define _newgen_var_val_domain_defined_
190 #define VAR_VAL_NEWGEN_DOMAIN (var_val_domain)
191 #define var_val_NEWGEN_DOMAIN (var_val_domain)
193 #endif /* _newgen_var_val_domain_defined_ */
194 
195 
196 /* BDT
197  */
198 #define BDT(x) ((bdt)((x).p))
199 #define bdt_CAST(x) BDT(x)
200 #define BDT_CAST(x) BDT(x)
201 #define BDT_(x) ((x).e)
202 #define BDT_TYPE bdt
203 #define bdt_TYPE bdt
204 #define bdt_undefined ((bdt)gen_chunk_undefined)
205 #define bdt_undefined_p(x) ((x)==bdt_undefined)
206 
207 extern bdt copy_bdt(bdt);
208 extern void free_bdt(bdt);
209 extern bdt check_bdt(bdt);
210 extern bool bdt_consistent_p(bdt);
211 extern bool bdt_defined_p(bdt);
212 #define gen_BDT_cons gen_bdt_cons
213 extern list gen_bdt_cons(bdt, list);
214 extern void bdt_assign_contents(bdt, bdt);
215 extern void bdt_non_recursive_free(bdt);
216 extern void write_bdt(FILE*, bdt);
217 extern bdt read_bdt(FILE*);
218 extern bdt make_bdt(list);
219 
223 };
224 
225 #define bdt_domain_number(x) ((x)->_type_)
226 #define bdt_schedules(x) ((x)->_bdt_holder_)
227 
228 /* COMMUNICATION
229  */
230 #define COMMUNICATION(x) ((communication)((x).p))
231 #define communication_CAST(x) COMMUNICATION(x)
232 #define COMMUNICATION_CAST(x) COMMUNICATION(x)
233 #define COMMUNICATION_(x) ((x).e)
234 #define COMMUNICATION_TYPE communication
235 #define communication_TYPE communication
236 #define communication_undefined ((communication)gen_chunk_undefined)
237 #define communication_undefined_p(x) ((x)==communication_undefined)
238 
240 extern void free_communication(communication);
244 #define gen_COMMUNICATION_cons gen_communication_cons
248 extern void write_communication(FILE*, communication);
249 extern communication read_communication(FILE*);
251 
254  predicate _communication_broadcast_; /* broadcast:predicate */
255  predicate _communication_reduction_; /* reduction:predicate */
256  predicate _communication_shift_; /* shift:predicate */
257 };
258 
259 #define communication_domain_number(x) ((x)->_type_)
260 #define communication_broadcast_(x) communication_broadcast(x) /* old hack compatible */
261 #define communication_broadcast(x) ((x)->_communication_broadcast_)
262 #define communication_reduction_(x) communication_reduction(x) /* old hack compatible */
263 #define communication_reduction(x) ((x)->_communication_reduction_)
264 #define communication_shift_(x) communication_shift(x) /* old hack compatible */
265 #define communication_shift(x) ((x)->_communication_shift_)
266 
267 /* CONDITIONAL
268  */
269 #define CONDITIONAL(x) ((conditional)((x).p))
270 #define conditional_CAST(x) CONDITIONAL(x)
271 #define CONDITIONAL_CAST(x) CONDITIONAL(x)
272 #define CONDITIONAL_(x) ((x).e)
273 #define CONDITIONAL_TYPE conditional
274 #define conditional_TYPE conditional
275 #define conditional_undefined ((conditional)gen_chunk_undefined)
276 #define conditional_undefined_p(x) ((x)==conditional_undefined)
277 
279 extern void free_conditional(conditional);
283 #define gen_CONDITIONAL_cons gen_conditional_cons
287 extern void write_conditional(FILE*, conditional);
288 extern conditional read_conditional(FILE*);
290 
293  predicate _conditional_predicate_; /* predicate:predicate */
294  quast _conditional_true_quast_; /* true_quast:quast */
295  quast _conditional_false_quast_; /* false_quast:quast */
296 };
297 
298 #define conditional_domain_number(x) ((x)->_type_)
299 #define conditional_predicate_(x) conditional_predicate(x) /* old hack compatible */
300 #define conditional_predicate(x) ((x)->_conditional_predicate_)
301 #define conditional_true_quast_(x) conditional_true_quast(x) /* old hack compatible */
302 #define conditional_true_quast(x) ((x)->_conditional_true_quast_)
303 #define conditional_false_quast_(x) conditional_false_quast(x) /* old hack compatible */
304 #define conditional_false_quast(x) ((x)->_conditional_false_quast_)
305 
306 /* DATAFLOW
307  */
308 #define DATAFLOW(x) ((dataflow)((x).p))
309 #define dataflow_CAST(x) DATAFLOW(x)
310 #define DATAFLOW_CAST(x) DATAFLOW(x)
311 #define DATAFLOW_(x) ((x).e)
312 #define DATAFLOW_TYPE dataflow
313 #define dataflow_TYPE dataflow
314 #define dataflow_undefined ((dataflow)gen_chunk_undefined)
315 #define dataflow_undefined_p(x) ((x)==dataflow_undefined)
316 
318 extern void free_dataflow(dataflow);
320 extern bool dataflow_consistent_p(dataflow);
321 extern bool dataflow_defined_p(dataflow);
322 #define gen_DATAFLOW_cons gen_dataflow_cons
326 extern void write_dataflow(FILE*, dataflow);
327 extern dataflow read_dataflow(FILE*);
329 
332  reference _dataflow_reference_; /* reference:reference */
333  list _dataflow_transformation_; /* transformation:expression* */
334  predicate _dataflow_governing_pred_; /* governing_pred:predicate */
335  communication _dataflow_communication_; /* communication:communication */
336 };
337 
338 #define dataflow_domain_number(x) ((x)->_type_)
339 #define dataflow_reference_(x) dataflow_reference(x) /* old hack compatible */
340 #define dataflow_reference(x) ((x)->_dataflow_reference_)
341 #define dataflow_transformation_(x) dataflow_transformation(x) /* old hack compatible */
342 #define dataflow_transformation(x) ((x)->_dataflow_transformation_)
343 #define dataflow_governing_pred_(x) dataflow_governing_pred(x) /* old hack compatible */
344 #define dataflow_governing_pred(x) ((x)->_dataflow_governing_pred_)
345 #define dataflow_communication_(x) dataflow_communication(x) /* old hack compatible */
346 #define dataflow_communication(x) ((x)->_dataflow_communication_)
347 
348 /* DFG_ARC_LABEL
349  */
350 #define DFG_ARC_LABEL(x) ((dfg_arc_label)((x).p))
351 #define dfg_arc_label_CAST(x) DFG_ARC_LABEL(x)
352 #define DFG_ARC_LABEL_CAST(x) DFG_ARC_LABEL(x)
353 #define DFG_ARC_LABEL_(x) ((x).e)
354 #define DFG_ARC_LABEL_TYPE dfg_arc_label
355 #define dfg_arc_label_TYPE dfg_arc_label
356 #define dfg_arc_label_undefined ((dfg_arc_label)gen_chunk_undefined)
357 #define dfg_arc_label_undefined_p(x) ((x)==dfg_arc_label_undefined)
358 
360 extern void free_dfg_arc_label(dfg_arc_label);
364 #define gen_DFG_ARC_LABEL_cons gen_dfg_arc_label_cons
368 extern void write_dfg_arc_label(FILE*, dfg_arc_label);
369 extern dfg_arc_label read_dfg_arc_label(FILE*);
371 
375 };
376 
377 #define dfg_arc_label_domain_number(x) ((x)->_type_)
378 #define dfg_arc_label_dataflows(x) ((x)->_dfg_arc_label_holder_)
379 
380 /* DFG_VERTEX_LABEL
381  */
382 #define DFG_VERTEX_LABEL(x) ((dfg_vertex_label)((x).p))
383 #define dfg_vertex_label_CAST(x) DFG_VERTEX_LABEL(x)
384 #define DFG_VERTEX_LABEL_CAST(x) DFG_VERTEX_LABEL(x)
385 #define DFG_VERTEX_LABEL_(x) ((x).e)
386 #define DFG_VERTEX_LABEL_TYPE dfg_vertex_label
387 #define dfg_vertex_label_TYPE dfg_vertex_label
388 #define dfg_vertex_label_undefined ((dfg_vertex_label)gen_chunk_undefined)
389 #define dfg_vertex_label_undefined_p(x) ((x)==dfg_vertex_label_undefined)
390 
396 #define gen_DFG_VERTEX_LABEL_cons gen_dfg_vertex_label_cons
400 extern void write_dfg_vertex_label(FILE*, dfg_vertex_label);
403 
407  predicate _dfg_vertex_label_exec_domain_; /* exec_domain:predicate */
408  sccflags _dfg_vertex_label_sccflags_; /* sccflags:sccflags */
409 };
410 
411 #define dfg_vertex_label_domain_number(x) ((x)->_type_)
412 #define dfg_vertex_label_statement_(x) dfg_vertex_label_statement(x) /* old hack compatible */
413 #define dfg_vertex_label_statement(x) ((x)->_dfg_vertex_label_statement_)
414 #define dfg_vertex_label_exec_domain_(x) dfg_vertex_label_exec_domain(x) /* old hack compatible */
415 #define dfg_vertex_label_exec_domain(x) ((x)->_dfg_vertex_label_exec_domain_)
416 #define dfg_vertex_label_sccflags_(x) dfg_vertex_label_sccflags(x) /* old hack compatible */
417 #define dfg_vertex_label_sccflags(x) ((x)->_dfg_vertex_label_sccflags_)
418 
419 /* LEAF_LABEL
420  */
421 #define LEAF_LABEL(x) ((leaf_label)((x).p))
422 #define leaf_label_CAST(x) LEAF_LABEL(x)
423 #define LEAF_LABEL_CAST(x) LEAF_LABEL(x)
424 #define LEAF_LABEL_(x) ((x).e)
425 #define LEAF_LABEL_TYPE leaf_label
426 #define leaf_label_TYPE leaf_label
427 #define leaf_label_undefined ((leaf_label)gen_chunk_undefined)
428 #define leaf_label_undefined_p(x) ((x)==leaf_label_undefined)
429 
431 extern void free_leaf_label(leaf_label);
434 extern bool leaf_label_defined_p(leaf_label);
435 #define gen_LEAF_LABEL_cons gen_leaf_label_cons
439 extern void write_leaf_label(FILE*, leaf_label);
440 extern leaf_label read_leaf_label(FILE*);
442 
445  intptr_t _leaf_label_statement_; /* statement:int */
446  intptr_t _leaf_label_depth_; /* depth:int */
447 };
448 
449 #define leaf_label_domain_number(x) ((x)->_type_)
450 #define leaf_label_statement_(x) leaf_label_statement(x) /* old hack compatible */
451 #define leaf_label_statement(x) ((x)->_leaf_label_statement_)
452 #define leaf_label_depth_(x) leaf_label_depth(x) /* old hack compatible */
453 #define leaf_label_depth(x) ((x)->_leaf_label_depth_)
454 
455 /* LISP_EXPRESSION
456  */
457 #define LISP_EXPRESSION(x) ((lisp_expression)((x).p))
458 #define lisp_expression_CAST(x) LISP_EXPRESSION(x)
459 #define LISP_EXPRESSION_CAST(x) LISP_EXPRESSION(x)
460 #define LISP_EXPRESSION_(x) ((x).e)
461 #define LISP_EXPRESSION_TYPE lisp_expression
462 #define lisp_expression_TYPE lisp_expression
463 #define lisp_expression_undefined ((lisp_expression)gen_chunk_undefined)
464 #define lisp_expression_undefined_p(x) ((x)==lisp_expression_undefined)
465 
471 #define gen_LISP_EXPRESSION_cons gen_lisp_expression_cons
475 extern void write_lisp_expression(FILE*, lisp_expression);
478 
481  string _lisp_expression_operation_; /* operation:string */
482  list _lisp_expression_args_; /* args:expression* */
483 };
484 
485 #define lisp_expression_domain_number(x) ((x)->_type_)
486 #define lisp_expression_operation_(x) lisp_expression_operation(x) /* old hack compatible */
487 #define lisp_expression_operation(x) ((x)->_lisp_expression_operation_)
488 #define lisp_expression_args_(x) lisp_expression_args(x) /* old hack compatible */
489 #define lisp_expression_args(x) ((x)->_lisp_expression_args_)
490 
491 /* PLACEMENT
492  */
493 #define PLACEMENT(x) ((placement)((x).p))
494 #define placement_CAST(x) PLACEMENT(x)
495 #define PLACEMENT_CAST(x) PLACEMENT(x)
496 #define PLACEMENT_(x) ((x).e)
497 #define PLACEMENT_TYPE placement
498 #define placement_TYPE placement
499 #define placement_undefined ((placement)gen_chunk_undefined)
500 #define placement_undefined_p(x) ((x)==placement_undefined)
501 
503 extern void free_placement(placement);
505 extern bool placement_consistent_p(placement);
506 extern bool placement_defined_p(placement);
507 #define gen_PLACEMENT_cons gen_placement_cons
511 extern void write_placement(FILE*, placement);
512 extern placement read_placement(FILE*);
514 
517  intptr_t _placement_statement_; /* statement:int */
518  list _placement_dims_; /* dims:expression* */
519 };
520 
521 #define placement_domain_number(x) ((x)->_type_)
522 #define placement_statement_(x) placement_statement(x) /* old hack compatible */
523 #define placement_statement(x) ((x)->_placement_statement_)
524 #define placement_dims_(x) placement_dims(x) /* old hack compatible */
525 #define placement_dims(x) ((x)->_placement_dims_)
526 
527 /* PLC
528  */
529 #define PLC(x) ((plc)((x).p))
530 #define plc_CAST(x) PLC(x)
531 #define PLC_CAST(x) PLC(x)
532 #define PLC_(x) ((x).e)
533 #define PLC_TYPE plc
534 #define plc_TYPE plc
535 #define plc_undefined ((plc)gen_chunk_undefined)
536 #define plc_undefined_p(x) ((x)==plc_undefined)
537 
538 extern plc copy_plc(plc);
539 extern void free_plc(plc);
540 extern plc check_plc(plc);
541 extern bool plc_consistent_p(plc);
542 extern bool plc_defined_p(plc);
543 #define gen_PLC_cons gen_plc_cons
544 extern list gen_plc_cons(plc, list);
545 extern void plc_assign_contents(plc, plc);
546 extern void plc_non_recursive_free(plc);
547 extern void write_plc(FILE*, plc);
548 extern plc read_plc(FILE*);
549 extern plc make_plc(list);
550 
554 };
555 
556 #define plc_domain_number(x) ((x)->_type_)
557 #define plc_placements(x) ((x)->_plc_holder_)
558 
559 /* QUAST_LEAF
560  */
561 #define QUAST_LEAF(x) ((quast_leaf)((x).p))
562 #define quast_leaf_CAST(x) QUAST_LEAF(x)
563 #define QUAST_LEAF_CAST(x) QUAST_LEAF(x)
564 #define QUAST_LEAF_(x) ((x).e)
565 #define QUAST_LEAF_TYPE quast_leaf
566 #define quast_leaf_TYPE quast_leaf
567 #define quast_leaf_undefined ((quast_leaf)gen_chunk_undefined)
568 #define quast_leaf_undefined_p(x) ((x)==quast_leaf_undefined)
569 
571 extern void free_quast_leaf(quast_leaf);
574 extern bool quast_leaf_defined_p(quast_leaf);
575 #define gen_QUAST_LEAF_cons gen_quast_leaf_cons
579 extern void write_quast_leaf(FILE*, quast_leaf);
580 extern quast_leaf read_quast_leaf(FILE*);
582 
585  list _quast_leaf_solution_; /* solution:expression* */
586  leaf_label _quast_leaf_leaf_label_; /* leaf_label:leaf_label */
587 };
588 
589 #define quast_leaf_domain_number(x) ((x)->_type_)
590 #define quast_leaf_solution_(x) quast_leaf_solution(x) /* old hack compatible */
591 #define quast_leaf_solution(x) ((x)->_quast_leaf_solution_)
592 #define quast_leaf_leaf_label_(x) quast_leaf_leaf_label(x) /* old hack compatible */
593 #define quast_leaf_leaf_label(x) ((x)->_quast_leaf_leaf_label_)
594 
595 /* QUAST
596  */
597 #define QUAST(x) ((quast)((x).p))
598 #define quast_CAST(x) QUAST(x)
599 #define QUAST_CAST(x) QUAST(x)
600 #define QUAST_(x) ((x).e)
601 #define QUAST_TYPE quast
602 #define quast_TYPE quast
603 #define quast_undefined ((quast)gen_chunk_undefined)
604 #define quast_undefined_p(x) ((x)==quast_undefined)
605 
606 extern quast copy_quast(quast);
607 extern void free_quast(quast);
608 extern quast check_quast(quast);
609 extern bool quast_consistent_p(quast);
610 extern bool quast_defined_p(quast);
611 #define gen_QUAST_cons gen_quast_cons
612 extern list gen_quast_cons(quast, list);
613 extern void quast_assign_contents(quast, quast);
614 extern void quast_non_recursive_free(quast);
615 extern void write_quast(FILE*, quast);
616 extern quast read_quast(FILE*);
618 
621  quast_value _quast_quast_value_; /* quast_value:quast_value */
622  list _quast_newparms_; /* newparms:var_val* */
623 };
624 
625 #define quast_domain_number(x) ((x)->_type_)
626 #define quast_quast_value_(x) quast_quast_value(x) /* old hack compatible */
627 #define quast_quast_value(x) ((x)->_quast_quast_value_)
628 #define quast_newparms_(x) quast_newparms(x) /* old hack compatible */
629 #define quast_newparms(x) ((x)->_quast_newparms_)
630 
631 /* QUAST_VALUE
632  */
633 #define QUAST_VALUE(x) ((quast_value)((x).p))
634 #define quast_value_CAST(x) QUAST_VALUE(x)
635 #define QUAST_VALUE_CAST(x) QUAST_VALUE(x)
636 #define QUAST_VALUE_(x) ((x).e)
637 #define QUAST_VALUE_TYPE quast_value
638 #define quast_value_TYPE quast_value
639 #define quast_value_undefined ((quast_value)gen_chunk_undefined)
640 #define quast_value_undefined_p(x) ((x)==quast_value_undefined)
641 
643 extern void free_quast_value(quast_value);
647 #define gen_QUAST_VALUE_cons gen_quast_value_cons
651 extern void write_quast_value(FILE*, quast_value);
652 extern quast_value read_quast_value(FILE*);
656 };
657 extern string quast_value_tag_as_string(enum quast_value_utype);
658 extern quast_value make_quast_value(enum quast_value_utype, void *);
661 
665  union {
666  quast_leaf _quast_value_quast_leaf_; /* quast_leaf:quast_leaf */
667  conditional _quast_value_conditional_; /* conditional:conditional */
669 };
670 
671 #define quast_value_domain_number(x) ((x)->_type_)
672 #define quast_value_tag(x) ((x)->_quast_value_tag__)
673 #define quast_value_quast_leaf_p(x) (quast_value_tag(x)==is_quast_value_quast_leaf)
674 #define quast_value_quast_leaf_(x) quast_value_quast_leaf(x) /* old hack compatible */
675 #define quast_value_quast_leaf(x) ((x)->_quast_value_union_._quast_value_quast_leaf_)
676 #define quast_value_conditional_p(x) (quast_value_tag(x)==is_quast_value_conditional)
677 #define quast_value_conditional_(x) quast_value_conditional(x) /* old hack compatible */
678 #define quast_value_conditional(x) ((x)->_quast_value_union_._quast_value_conditional_)
679 
680 /* SCHEDULE
681  */
682 #define SCHEDULE(x) ((schedule)((x).p))
683 #define schedule_CAST(x) SCHEDULE(x)
684 #define SCHEDULE_CAST(x) SCHEDULE(x)
685 #define SCHEDULE_(x) ((x).e)
686 #define SCHEDULE_TYPE schedule
687 #define schedule_TYPE schedule
688 #define schedule_undefined ((schedule)gen_chunk_undefined)
689 #define schedule_undefined_p(x) ((x)==schedule_undefined)
690 
692 extern void free_schedule(schedule);
694 extern bool schedule_consistent_p(schedule);
695 extern bool schedule_defined_p(schedule);
696 #define gen_SCHEDULE_cons gen_schedule_cons
700 extern void write_schedule(FILE*, schedule);
701 extern schedule read_schedule(FILE*);
703 
706  intptr_t _schedule_statement_; /* statement:int */
707  predicate _schedule_predicate_; /* predicate:predicate */
708  list _schedule_dims_; /* dims:expression* */
709 };
710 
711 #define schedule_domain_number(x) ((x)->_type_)
712 #define schedule_statement_(x) schedule_statement(x) /* old hack compatible */
713 #define schedule_statement(x) ((x)->_schedule_statement_)
714 #define schedule_predicate_(x) schedule_predicate(x) /* old hack compatible */
715 #define schedule_predicate(x) ((x)->_schedule_predicate_)
716 #define schedule_dims_(x) schedule_dims(x) /* old hack compatible */
717 #define schedule_dims(x) ((x)->_schedule_dims_)
718 
719 /* STATIC_CONTROL
720  */
721 #define STATIC_CONTROL(x) ((static_control)((x).p))
722 #define static_control_CAST(x) STATIC_CONTROL(x)
723 #define STATIC_CONTROL_CAST(x) STATIC_CONTROL(x)
724 #define STATIC_CONTROL_(x) ((x).e)
725 #define STATIC_CONTROL_TYPE static_control
726 #define static_control_TYPE static_control
727 #define static_control_undefined ((static_control)gen_chunk_undefined)
728 #define static_control_undefined_p(x) ((x)==static_control_undefined)
729 
735 #define gen_STATIC_CONTROL_cons gen_static_control_cons
739 extern void write_static_control(FILE*, static_control);
740 extern static_control read_static_control(FILE*);
742 
746  list _static_control_params_; /* params:entity* */
747  list _static_control_loops_; /* loops:loop* */
748  list _static_control_tests_; /* tests:expression* */
749 };
750 
751 #define static_control_domain_number(x) ((x)->_type_)
752 #define static_control_yes_(x) static_control_yes(x) /* old hack compatible */
753 #define static_control_yes(x) ((x)->_static_control_yes_.b)
754 #define static_control_params_(x) static_control_params(x) /* old hack compatible */
755 #define static_control_params(x) ((x)->_static_control_params_)
756 #define static_control_loops_(x) static_control_loops(x) /* old hack compatible */
757 #define static_control_loops(x) ((x)->_static_control_loops_)
758 #define static_control_tests_(x) static_control_tests(x) /* old hack compatible */
759 #define static_control_tests(x) ((x)->_static_control_tests_)
760 
761 /* VAR_VAL
762  */
763 #define VAR_VAL(x) ((var_val)((x).p))
764 #define var_val_CAST(x) VAR_VAL(x)
765 #define VAR_VAL_CAST(x) VAR_VAL(x)
766 #define VAR_VAL_(x) ((x).e)
767 #define VAR_VAL_TYPE var_val
768 #define var_val_TYPE var_val
769 #define var_val_undefined ((var_val)gen_chunk_undefined)
770 #define var_val_undefined_p(x) ((x)==var_val_undefined)
771 
773 extern void free_var_val(var_val);
775 extern bool var_val_consistent_p(var_val);
776 extern bool var_val_defined_p(var_val);
777 #define gen_VAR_VAL_cons gen_var_val_cons
781 extern void write_var_val(FILE*, var_val);
782 extern var_val read_var_val(FILE*);
784 
787  entity _var_val_variable_; /* variable:entity */
788  expression _var_val_value_; /* value:expression */
789 };
790 
791 #define var_val_domain_number(x) ((x)->_type_)
792 #define var_val_variable_(x) var_val_variable(x) /* old hack compatible */
793 #define var_val_variable(x) ((x)->_var_val_variable_)
794 #define var_val_value_(x) var_val_value(x) /* old hack compatible */
795 #define var_val_value(x) ((x)->_var_val_value_)
796 
797 #define paf_ri_spec "\
798 --NEWGEN-START 232\n\
799 import reference from \"ri.newgen\";\n\
800 import predicate from \"ri.newgen\";\n\
801 import expression from \"ri.newgen\";\n\
802 import loop from \"ri.newgen\";\n\
803 import statement from \"ri.newgen\";\n\
804 import entity from \"ri.newgen\";\n\
805 import sccflags from \"dg.newgen\";\n\
806 external Pvecteur;\n\
807 bdt = schedules:schedule*;\n\
808 communication = broadcast:predicate x reduction:predicate x shift:predicate;\n\
809 conditional = predicate:predicate x true_quast:quast x false_quast:quast;\n\
810 dataflow = reference:reference x transformation:expression* x governing_pred:predicate x communication:communication;\n\
811 dfg_arc_label = dataflows:dataflow*;\n\
812 dfg_vertex_label = statement:int x exec_domain:predicate x sccflags:sccflags;\n\
813 leaf_label = statement:int x depth:int;\n\
814 lisp_expression = operation:string x args:expression*;\n\
815 placement = statement:int x dims:expression*;\n\
816 plc = placements:placement*;\n\
817 quast_leaf = solution:expression* x leaf_label:leaf_label;\n\
818 quast = quast_value:quast_value x newparms:var_val*;\n\
819 quast_value = quast_leaf:quast_leaf + conditional:conditional;\n\
820 schedule = statement:int x predicate:predicate x dims:expression*;\n\
821 static_control = yes:bool x params:entity* x loops:loop* x tests:expression*;\n\
822 var_val = variable:entity x value:expression;\n\
823 "
824 #endif
struct _newgen_struct_dataflow_ * dataflow
Definition: paf_ri.h:96
conditional check_conditional(conditional)
Definition: paf_ri.c:108
bool conditional_defined_p(conditional)
Definition: paf_ri.c:115
void free_quast(quast)
Definition: paf_ri.c:483
leaf_label copy_leaf_label(leaf_label)
LEAF_LABEL.
Definition: paf_ri.c:270
struct _newgen_struct_quast_value_ * quast_value
Definition: paf_ri.h:168
bdt copy_bdt(bdt)
BDT.
Definition: paf_ri.c:18
void free_lisp_expression(lisp_expression)
Definition: paf_ri.c:315
bool var_val_defined_p(var_val)
Definition: paf_ri.c:674
bool leaf_label_defined_p(leaf_label)
Definition: paf_ri.c:283
quast_value read_quast_value(FILE *)
Definition: paf_ri.c:555
conditional copy_conditional(conditional)
CONDITIONAL.
Definition: paf_ri.c:102
list gen_quast_leaf_cons(quast_leaf, list)
Definition: paf_ri.c:454
list gen_dfg_arc_label_cons(dfg_arc_label, list)
Definition: paf_ri.c:202
bool var_val_consistent_p(var_val)
Definition: paf_ri.c:670
void quast_value_assign_contents(quast_value, quast_value)
Definition: paf_ri.c:541
schedule read_schedule(FILE *)
Definition: paf_ri.c:610
communication copy_communication(communication)
COMMUNICATION.
Definition: paf_ri.c:60
struct _newgen_struct_reference_ * reference
Definition: paf_ri.h:14
plc make_plc(list)
Definition: paf_ri.c:432
bdt make_bdt(list)
Definition: paf_ri.c:54
bool leaf_label_consistent_p(leaf_label)
Definition: paf_ri.c:279
quast_value make_quast_value(enum quast_value_utype, void *)
Definition: paf_ri.c:565
void free_schedule(schedule)
Definition: paf_ri.c:580
list gen_static_control_cons(static_control, list)
Definition: paf_ri.c:635
list gen_var_val_cons(var_val, list)
Definition: paf_ri.c:677
struct _newgen_struct_var_val_ * var_val
Definition: paf_ri.h:192
struct _newgen_struct_statement_ * statement
Definition: paf_ri.h:42
void bdt_assign_contents(bdt, bdt)
Definition: paf_ri.c:37
dfg_vertex_label make_dfg_vertex_label(intptr_t, predicate, sccflags)
Definition: paf_ri.c:264
void write_plc(FILE *, plc)
Definition: paf_ri.c:426
struct _newgen_struct_lisp_expression_ * lisp_expression
Definition: paf_ri.h:128
void leaf_label_assign_contents(leaf_label, leaf_label)
Definition: paf_ri.c:289
struct _newgen_struct_conditional_ * conditional
Definition: paf_ri.h:88
list gen_bdt_cons(bdt, list)
Definition: paf_ri.c:34
void free_static_control(static_control)
Definition: paf_ri.c:622
static_control read_static_control(FILE *)
Definition: paf_ri.c:652
bool placement_consistent_p(placement)
Definition: paf_ri.c:363
void write_quast_leaf(FILE *, quast_leaf)
Definition: paf_ri.c:468
void dfg_vertex_label_assign_contents(dfg_vertex_label, dfg_vertex_label)
Definition: paf_ri.c:247
void dataflow_non_recursive_free(dataflow)
Definition: paf_ri.c:170
struct _newgen_struct_static_control_ * static_control
Definition: paf_ri.h:184
void free_quast_value(quast_value)
Definition: paf_ri.c:525
list gen_plc_cons(plc, list)
Definition: paf_ri.c:412
struct _newgen_struct_bdt_ * bdt
Definition: paf_ri.h:72
void dfg_arc_label_assign_contents(dfg_arc_label, dfg_arc_label)
Definition: paf_ri.c:205
lisp_expression make_lisp_expression(string, list)
Definition: paf_ri.c:348
void write_leaf_label(FILE *, leaf_label)
Definition: paf_ri.c:300
void placement_non_recursive_free(placement)
Definition: paf_ri.c:380
communication check_communication(communication)
Definition: paf_ri.c:66
void write_dfg_vertex_label(FILE *, dfg_vertex_label)
Definition: paf_ri.c:258
bool conditional_consistent_p(conditional)
Definition: paf_ri.c:111
void plc_non_recursive_free(plc)
Definition: paf_ri.c:422
var_val read_var_val(FILE *)
Definition: paf_ri.c:694
bool schedule_defined_p(schedule)
Definition: paf_ri.c:590
struct _newgen_struct_sccflags_ * sccflags
Definition: paf_ri.h:56
void free_communication(communication)
Definition: paf_ri.c:63
static_control copy_static_control(static_control)
STATIC_CONTROL.
Definition: paf_ri.c:619
string quast_value_tag_as_string(enum quast_value_utype)
Definition: paf_ri.c:558
bool communication_consistent_p(communication)
Definition: paf_ri.c:69
quast copy_quast(quast)
QUAST.
Definition: paf_ri.c:480
quast_value_utype
Definition: paf_ri.h:653
@ is_quast_value_quast_leaf
Definition: paf_ri.h:654
@ is_quast_value_conditional
Definition: paf_ri.h:655
void quast_leaf_non_recursive_free(quast_leaf)
Definition: paf_ri.c:464
list gen_conditional_cons(conditional, list)
Definition: paf_ri.c:118
void quast_leaf_assign_contents(quast_leaf, quast_leaf)
Definition: paf_ri.c:457
void free_plc(plc)
Definition: paf_ri.c:399
lisp_expression check_lisp_expression(lisp_expression)
Definition: paf_ri.c:318
void plc_assign_contents(plc, plc)
Definition: paf_ri.c:415
schedule make_schedule(intptr_t, predicate, list)
Definition: paf_ri.c:613
void lisp_expression_non_recursive_free(lisp_expression)
Definition: paf_ri.c:338
bool lisp_expression_consistent_p(lisp_expression)
Definition: paf_ri.c:321
dfg_arc_label check_dfg_arc_label(dfg_arc_label)
Definition: paf_ri.c:192
void write_quast_value(FILE *, quast_value)
Definition: paf_ri.c:552
bool quast_leaf_defined_p(quast_leaf)
Definition: paf_ri.c:451
void conditional_assign_contents(conditional, conditional)
Definition: paf_ri.c:121
conditional make_conditional(predicate, quast, quast)
Definition: paf_ri.c:138
void communication_non_recursive_free(communication)
Definition: paf_ri.c:86
void write_communication(FILE *, communication)
Definition: paf_ri.c:90
plc check_plc(plc)
Definition: paf_ri.c:402
void lisp_expression_assign_contents(lisp_expression, lisp_expression)
Definition: paf_ri.c:331
bdt read_bdt(FILE *)
Definition: paf_ri.c:51
bool quast_consistent_p(quast)
Definition: paf_ri.c:489
bool dataflow_consistent_p(dataflow)
Definition: paf_ri.c:153
dfg_vertex_label copy_dfg_vertex_label(dfg_vertex_label)
DFG_VERTEX_LABEL.
Definition: paf_ri.c:228
quast_leaf check_quast_leaf(quast_leaf)
Definition: paf_ri.c:444
communication read_communication(FILE *)
Definition: paf_ri.c:93
void free_leaf_label(leaf_label)
Definition: paf_ri.c:273
bool communication_defined_p(communication)
Definition: paf_ri.c:73
void write_conditional(FILE *, conditional)
Definition: paf_ri.c:132
lisp_expression read_lisp_expression(FILE *)
Definition: paf_ri.c:345
quast_leaf make_quast_leaf(list, leaf_label)
Definition: paf_ri.c:474
bool quast_value_consistent_p(quast_value)
Definition: paf_ri.c:531
conditional read_conditional(FILE *)
Definition: paf_ri.c:135
list gen_quast_cons(quast, list)
Definition: paf_ri.c:496
struct _newgen_struct_quast_leaf_ * quast_leaf
Definition: paf_ri.h:152
void schedule_assign_contents(schedule, schedule)
Definition: paf_ri.c:596
struct _newgen_struct_dfg_arc_label_ * dfg_arc_label
Definition: paf_ri.h:104
bool dfg_arc_label_consistent_p(dfg_arc_label)
Definition: paf_ri.c:195
struct _newgen_struct_loop_ * loop
Definition: paf_ri.h:35
struct _newgen_struct_communication_ * communication
Definition: paf_ri.h:80
leaf_label read_leaf_label(FILE *)
Definition: paf_ri.c:303
var_val make_var_val(entity, expression)
Definition: paf_ri.c:697
void write_var_val(FILE *, var_val)
Definition: paf_ri.c:691
bool dfg_arc_label_defined_p(dfg_arc_label)
Definition: paf_ri.c:199
quast_leaf copy_quast_leaf(quast_leaf)
QUAST_LEAF.
Definition: paf_ri.c:438
void schedule_non_recursive_free(schedule)
Definition: paf_ri.c:603
dfg_vertex_label read_dfg_vertex_label(FILE *)
Definition: paf_ri.c:261
bool dataflow_defined_p(dataflow)
Definition: paf_ri.c:157
void leaf_label_non_recursive_free(leaf_label)
Definition: paf_ri.c:296
schedule check_schedule(schedule)
Definition: paf_ri.c:583
void free_quast_leaf(quast_leaf)
Definition: paf_ri.c:441
void free_dfg_arc_label(dfg_arc_label)
Definition: paf_ri.c:189
void static_control_non_recursive_free(static_control)
Definition: paf_ri.c:645
var_val copy_var_val(var_val)
VAR_VAL.
Definition: paf_ri.c:661
bool quast_value_defined_p(quast_value)
Definition: paf_ri.c:535
void var_val_non_recursive_free(var_val)
Definition: paf_ri.c:687
void placement_assign_contents(placement, placement)
Definition: paf_ri.c:373
communication make_communication(predicate, predicate, predicate)
Definition: paf_ri.c:96
void write_schedule(FILE *, schedule)
Definition: paf_ri.c:607
static_control check_static_control(static_control)
Definition: paf_ri.c:625
void write_dataflow(FILE *, dataflow)
Definition: paf_ri.c:174
void write_placement(FILE *, placement)
Definition: paf_ri.c:384
void var_val_assign_contents(var_val, var_val)
Definition: paf_ri.c:680
struct _newgen_struct_dfg_vertex_label_ * dfg_vertex_label
Definition: paf_ri.h:112
lisp_expression copy_lisp_expression(lisp_expression)
LISP_EXPRESSION.
Definition: paf_ri.c:312
dfg_vertex_label check_dfg_vertex_label(dfg_vertex_label)
Definition: paf_ri.c:234
void write_lisp_expression(FILE *, lisp_expression)
Definition: paf_ri.c:342
void quast_value_non_recursive_free(quast_value)
Definition: paf_ri.c:548
placement check_placement(placement)
Definition: paf_ri.c:360
placement copy_placement(placement)
PLACEMENT.
Definition: paf_ri.c:354
void free_dfg_vertex_label(dfg_vertex_label)
Definition: paf_ri.c:231
list gen_dataflow_cons(dataflow, list)
Definition: paf_ri.c:160
struct _newgen_struct_plc_ * plc
Definition: paf_ri.h:144
struct _newgen_struct_predicate_ * predicate
Definition: paf_ri.h:21
void static_control_assign_contents(static_control, static_control)
Definition: paf_ri.c:638
bool bdt_defined_p(bdt)
Definition: paf_ri.c:31
dfg_arc_label make_dfg_arc_label(list)
Definition: paf_ri.c:222
list gen_quast_value_cons(quast_value, list)
Definition: paf_ri.c:538
void free_conditional(conditional)
Definition: paf_ri.c:105
placement read_placement(FILE *)
Definition: paf_ri.c:387
void communication_assign_contents(communication, communication)
Definition: paf_ri.c:79
bdt check_bdt(bdt)
Definition: paf_ri.c:24
void dataflow_assign_contents(dataflow, dataflow)
Definition: paf_ri.c:163
struct _newgen_struct_schedule_ * schedule
Definition: paf_ri.h:176
quast_value make_quast_value_conditional(conditional)
Definition: paf_ri.c:571
list gen_lisp_expression_cons(lisp_expression, list)
Definition: paf_ri.c:328
bool lisp_expression_defined_p(lisp_expression)
Definition: paf_ri.c:325
schedule copy_schedule(schedule)
SCHEDULE.
Definition: paf_ri.c:577
leaf_label make_leaf_label(intptr_t, intptr_t)
Definition: paf_ri.c:306
bool static_control_defined_p(static_control)
Definition: paf_ri.c:632
void bdt_non_recursive_free(bdt)
Definition: paf_ri.c:44
leaf_label check_leaf_label(leaf_label)
Definition: paf_ri.c:276
bool placement_defined_p(placement)
Definition: paf_ri.c:367
struct _newgen_struct_placement_ * placement
Definition: paf_ri.h:136
bool dfg_vertex_label_defined_p(dfg_vertex_label)
Definition: paf_ri.c:241
dataflow make_dataflow(reference, list, predicate, communication)
Definition: paf_ri.c:180
list gen_leaf_label_cons(leaf_label, list)
Definition: paf_ri.c:286
void conditional_non_recursive_free(conditional)
Definition: paf_ri.c:128
quast_value make_quast_value_quast_leaf(quast_leaf)
Definition: paf_ri.c:568
quast_value copy_quast_value(quast_value)
QUAST_VALUE.
Definition: paf_ri.c:522
void free_bdt(bdt)
Definition: paf_ri.c:21
bool plc_consistent_p(plc)
Definition: paf_ri.c:405
struct _newgen_struct_expression_ * expression
Definition: paf_ri.h:28
dataflow read_dataflow(FILE *)
Definition: paf_ri.c:177
void dfg_arc_label_non_recursive_free(dfg_arc_label)
Definition: paf_ri.c:212
list gen_schedule_cons(schedule, list)
Definition: paf_ri.c:593
static_control make_static_control(bool, list, list, list)
Definition: paf_ri.c:655
void write_dfg_arc_label(FILE *, dfg_arc_label)
Definition: paf_ri.c:216
dataflow copy_dataflow(dataflow)
DATAFLOW.
Definition: paf_ri.c:144
dfg_arc_label copy_dfg_arc_label(dfg_arc_label)
DFG_ARC_LABEL.
Definition: paf_ri.c:186
bool static_control_consistent_p(static_control)
Definition: paf_ri.c:628
void free_placement(placement)
Definition: paf_ri.c:357
dfg_arc_label read_dfg_arc_label(FILE *)
Definition: paf_ri.c:219
struct _newgen_struct_entity_ * entity
Definition: paf_ri.h:49
struct _newgen_struct_quast_ * quast
Definition: paf_ri.h:160
bool dfg_vertex_label_consistent_p(dfg_vertex_label)
Definition: paf_ri.c:237
list gen_placement_cons(placement, list)
Definition: paf_ri.c:370
void free_dataflow(dataflow)
Definition: paf_ri.c:147
bool quast_defined_p(quast)
Definition: paf_ri.c:493
void write_quast(FILE *, quast)
Definition: paf_ri.c:510
bool schedule_consistent_p(schedule)
Definition: paf_ri.c:586
void quast_assign_contents(quast, quast)
Definition: paf_ri.c:499
quast make_quast(quast_value, list)
Definition: paf_ri.c:516
void free_var_val(var_val)
Definition: paf_ri.c:664
quast check_quast(quast)
Definition: paf_ri.c:486
list gen_dfg_vertex_label_cons(dfg_vertex_label, list)
Definition: paf_ri.c:244
bool plc_defined_p(plc)
Definition: paf_ri.c:409
void write_bdt(FILE *, bdt)
Definition: paf_ri.c:48
quast_leaf read_quast_leaf(FILE *)
Definition: paf_ri.c:471
void quast_non_recursive_free(quast)
Definition: paf_ri.c:506
dataflow check_dataflow(dataflow)
Definition: paf_ri.c:150
placement make_placement(intptr_t, list)
Definition: paf_ri.c:390
list gen_communication_cons(communication, list)
Definition: paf_ri.c:76
bool quast_leaf_consistent_p(quast_leaf)
Definition: paf_ri.c:447
struct _newgen_struct_leaf_label_ * leaf_label
Definition: paf_ri.h:120
plc read_plc(FILE *)
Definition: paf_ri.c:429
var_val check_var_val(var_val)
Definition: paf_ri.c:667
quast_value check_quast_value(quast_value)
Definition: paf_ri.c:528
void dfg_vertex_label_non_recursive_free(dfg_vertex_label)
Definition: paf_ri.c:254
void write_static_control(FILE *, static_control)
Definition: paf_ri.c:649
bool bdt_consistent_p(bdt)
Definition: paf_ri.c:27
plc copy_plc(plc)
PLC.
Definition: paf_ri.c:396
quast read_quast(FILE *)
Definition: paf_ri.c:513
#define intptr_t
Definition: stdint.in.h:294
intptr_t _type_
Definition: paf_ri.h:221
predicate _communication_reduction_
broadcast:predicate
Definition: paf_ri.h:255
predicate _communication_shift_
reduction:predicate
Definition: paf_ri.h:256
predicate _communication_broadcast_
Definition: paf_ri.h:254
quast _conditional_false_quast_
true_quast:quast
Definition: paf_ri.h:295
predicate _conditional_predicate_
Definition: paf_ri.h:293
quast _conditional_true_quast_
predicate:predicate
Definition: paf_ri.h:294
communication _dataflow_communication_
governing_pred:predicate
Definition: paf_ri.h:335
predicate _dataflow_governing_pred_
transformation:expression*
Definition: paf_ri.h:334
reference _dataflow_reference_
Definition: paf_ri.h:332
list _dataflow_transformation_
reference:reference
Definition: paf_ri.h:333
predicate _dfg_vertex_label_exec_domain_
statement:int
Definition: paf_ri.h:407
sccflags _dfg_vertex_label_sccflags_
exec_domain:predicate
Definition: paf_ri.h:408
intptr_t _leaf_label_depth_
statement:int
Definition: paf_ri.h:446
intptr_t _leaf_label_statement_
Definition: paf_ri.h:445
list _lisp_expression_args_
operation:string
Definition: paf_ri.h:482
intptr_t _placement_statement_
Definition: paf_ri.h:517
list _placement_dims_
statement:int
Definition: paf_ri.h:518
intptr_t _type_
Definition: paf_ri.h:552
list _quast_newparms_
quast_value:quast_value
Definition: paf_ri.h:622
quast_value _quast_quast_value_
Definition: paf_ri.h:621
leaf_label _quast_leaf_leaf_label_
solution:expression*
Definition: paf_ri.h:586
quast_leaf _quast_value_quast_leaf_
Definition: paf_ri.h:666
union _newgen_struct_quast_value_::@57 _quast_value_union_
conditional _quast_value_conditional_
quast_leaf:quast_leaf
Definition: paf_ri.h:667
enum quast_value_utype _quast_value_tag__
Definition: paf_ri.h:664
list _schedule_dims_
predicate:predicate
Definition: paf_ri.h:708
intptr_t _schedule_statement_
Definition: paf_ri.h:706
predicate _schedule_predicate_
statement:int
Definition: paf_ri.h:707
list _static_control_loops_
params:entity*
Definition: paf_ri.h:747
list _static_control_params_
yes:bool
Definition: paf_ri.h:746
list _static_control_tests_
loops:loop*
Definition: paf_ri.h:748
expression _var_val_value_
variable:entity
Definition: paf_ri.h:788
entity _var_val_variable_
Definition: paf_ri.h:787
The structure used to build lists in NewGen.
Definition: newgen_list.h:41
A gen_chunk is used to store every object.
Definition: genC.h:58