13 typedef struct ctx_info
15 ir_graph *graph; /* The graph of the callR who created this ctx */
16 /* (which is redundant, since it's always == get_irn_graph (call) */
17 ir_node *call; /* The call through which this graph was called */
18 struct ctx_info *enc; /* The ctx in which our callR was called */
22 typedef struct alloc_info
27 struct alloc_info *prev;
30 typedef struct callEd_info
33 struct callEd_info *prev;
36 typedef struct call_info
39 callEd_info_t *callEds;
40 struct call_info *prev;
43 typedef struct graph_info
52 struct graph_info *prev;
55 typedef void graph_hnd_t (graph_info_t*, void*);
56 typedef void alloc_hnd_t (alloc_info_t*, void*);
57 typedef void call_hnd_t (call_info_t*, void*);
58 typedef void callEd_hnd_t (callEd_info_t*, void*);
61 void ecg_print_ctx (ctx_info_t*, FILE *stream);
63 ctx_info_t *get_ctx (graph_info_t*, int);
64 ctx_info_t *get_main_ctx (void);
66 void ecg_iterate_graphs (graph_hnd_t*, void*);
67 void ecg_iterate_allocs (graph_info_t*, alloc_hnd_t*, void*);
68 void ecg_iterate_calls (graph_info_t*, call_hnd_t*, void*);
69 void ecg_iterate_callEds (call_info_t*, callEd_hnd_t*, void*);
71 graph_info_t *ecg_get_info (ir_graph*);
72 alloc_info_t *ecg_get_alloc_info (ir_graph*);
73 callEd_info_t *ecg_get_callEd_info (ir_node*);
76 void ecg_cleanup (void);
77 void ecg_report (void);
80 #endif /* defined _EGC_H_ */
85 Revision 1.4 2006/01/13 22:00:15 beck
86 renamed all types 'type' to 'ir_type'
88 Revision 1.3 2004/11/20 21:20:29 liekweg
89 Added iterator functions
91 Revision 1.2 2004/11/18 16:36:37 liekweg
92 Added unique ids for debugging, added access functions
94 Revision 1.1 2004/10/20 14:59:42 liekweg
95 Added ana2, added ecg and pto
97 Revision 1.3 2004/10/14 11:31:29 liekweg
100 Revision 1.2 2004/10/12 11:02:03 liekweg
103 Revision 1.1 2004/09/29 12:03:39 liekweg