- FILE *f = vcg_open_name("class_hierarchy", suffix);
-
- if (f != NULL) {
- h_env_t env;
- env.f = f;
- env.dump_ent = entities;
- dump_vcg_header(f, "class_hierarchy", "Hierarchic", NULL);
- type_walk(dump_class_hierarchy_node, NULL, &env);
-
- dump_vcg_footer(f);
- fclose(f);
- }
-}
-
-/*---------------------------------------------------------------------*/
-/* dumps all graphs with the graph-dumper passed. Possible dumpers: */
-/* dump_ir_graph */
-/* dump_ir_block_graph */
-/* dump_cfg */
-/* dump_type_graph */
-/* dump_ir_graph_w_types */
-/*---------------------------------------------------------------------*/
-
-void dump_all_ir_graphs(dump_graph_func *dmp_grph, const char *suffix) {
- int i;
- for (i = get_irp_n_irgs() - 1; i >= 0; --i)
- dmp_grph(get_irp_irg(i), suffix);
-}
-
-struct pass_t {
- ir_prog_pass_t pass;
- dump_graph_func *dump_graph;
- char suffix[1];
-};
-
-/**
- * Wrapper around dump_all_ir_graphs().
- */
-static int dump_all_ir_graphs_wrapper(ir_prog *irp, void *context) {
- struct pass_t *pass = context;
-
- (void)irp;
- dump_all_ir_graphs(pass->dump_graph, pass->suffix);
- return 0;
-}
-
-ir_prog_pass_t *dump_all_ir_graph_pass(
- const char *name, dump_graph_func *dump_graph, const char *suffix) {
- size_t len = strlen(suffix);
- struct pass_t *pass = xmalloc(sizeof(*pass) + len);
- ir_prog_pass_t *res = def_prog_pass_constructor(
- &pass->pass, name ? name : "dump_all_graphs", dump_all_ir_graphs_wrapper);
-
- /* this pass does not change anything, so neither dump nor verify is needed. */
- res->dump_irprog = ir_prog_no_dump;
- res->verify_irprog = ir_prog_no_verify;
-
- pass->dump_graph = dump_graph;
- strcpy(pass->suffix, suffix);
-
- return res;
-}
-
-/*--------------------------------------------------------------------------------*
- * Dumps a stand alone loop graph with firm nodes which belong to one loop node *
- * packed together in one subgraph/box *
- *--------------------------------------------------------------------------------*/
-
-void dump_loops_standalone(FILE *F, ir_loop *loop) {