some simple optimizations for execution speed
[libfirm] / ir / ir / irdump.h
index 0a2df64..53e1cd2 100644 (file)
@@ -35,6 +35,7 @@
 
 # include "irnode.h"
 # include "irgraph.h"
+# include "irloop.h"
 
 /**
  * The value of this string will be added to the file name before .vcg
@@ -216,6 +217,30 @@ void dump_all_types (void);
  */
 void dump_class_hierarchy (bool entities);
 
+
+/**
+ * Dump a standalone loop tree, which contains the loop nodes and the firm nodes
+ * belonging to one loop packed together in one subgraph.  Dumps to file
+ * <name of irg><suffix>-looptree.vcg
+ * Turns on edge labels by default.
+ *
+ * Implementing this dumper was stimulated by Florian Liekwegs similar dumper.
+ *
+ * @arg irg     Dump the loop tree for this graph.
+ * @arg suffix  Suffix to filename.
+ */
+void dump_loop_tree(ir_graph *irg, char *suffix);
+
+/** Dumps the firm nodes in the sub-loop-tree of loop to a graph.
+ *  Dumps the loop nodes if dump_loop_information() is set.
+ *
+ *  The name of the file is loop_<loop_nr><suffix>.vcg.
+ *
+ *  @arg loop    Dump the loop tree for this loop.
+ *  @arg suffix  Suffix to filename.
+ */
+void dump_loop (ir_loop *l, char *suffix);
+
 /**
  *   Sets the vcg flag "display_edge_labels" to no.
  *
@@ -299,11 +324,4 @@ void dump_analysed_type_info(bool b);
 void dump_pointer_values_to_info(bool b);
 
 
-/**
- * Dump a standalone loop tree, which contains the loop nodes and the firm nodes
- * belonging to one loop packed together in one subgraph.
- */
-
-void dump_standalone_loop_tree(ir_graph *irg);
-
 # endif /* _IRDUMP_H_ */