typo removed
[libfirm] / ir / ir / irdump.h
index ad3c999..2d89ecd 100644 (file)
@@ -1,16 +1,34 @@
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project:     libFIRM
+ * File name:   ir/ir/irdump.h
+ * Purpose:     Write vcg representation of firm to file.
+ * Author:      Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Hubert Schmidt
+ * Created:
+ * CVS-ID:      $Id$
+ * Copyright:   (c) 1998-2003 Universität Karlsruhe
+ * Licence:     This file protected by GPL -  GNU GENERAL PUBLIC LICENSE.
+ */
+
 
 /**
  * @file irdump.h
  *
- * Dump an ir graph, for further use with xvcg.
+ * Dump routines for the ir graph and all type information.
  *
  * @author Martin Trapp, Christian Schaefer
+ *
+ * The dump format of most functions is vcg.  This is a text based graph
+ * representation. Some use the original format,
+ * but most generate an extended format that is only read by some special
+ * versions of xvcg or by the comercialized version now calles aiSee.
+ * A test version of aiSee is available at
+ * http://www.absint.de/aisee/download/index.htm.
+ *
+ * Most routines use the name of the passed entity as the name of the
+ * file dumped to.
  */
 
-/* $Id$ */
 
 # ifndef _IRDUMP_H_
 # define _IRDUMP_H_
 # include "irgraph.h"
 
 /**
- *   Dump routines for the graph and all type information.
+ * The value of this string will be added to the file name before .vcg
  *
- *   The dump format of most functions is vcg.  This is a text based graph
- *   representation. Some use the original format,
- *   but most generate an extended format that is only read by some special
- *   versions of xvcg or by the comercialized version now calles aiSee.
- *   A test version of aiSee is available at
- *   http://www.absint.de/aisee/download/index.htm.
- *
- *   Most routines use the name of the passed entity as the name of the
- *   file dumped to.
- *
- * @note GL: A hack
+ * @todo  GL: A hack -- add parameter to dumper function.
  */
 extern char *dump_file_suffix;
 
@@ -49,7 +57,7 @@ extern char *dump_file_suffix;
  *  name of the entity describing the procedure (irg->entity) and the
  *  ending .vcg.  Eventually overwrites existing files.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_ir_graph (ir_graph *irg);
 
@@ -67,7 +75,7 @@ void dump_ir_graph (ir_graph *irg);
  *  name of the entity describing the procedure (irg->entity) and the
  *  ending .vcg.  Eventually overwrites existing files.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_ir_block_graph (ir_graph *irg);
 
@@ -84,7 +92,7 @@ void dump_ir_block_graph (ir_graph *irg);
  *   name of the entity describing the procedure (irg->entity) and the
  *   ending -cfg.vcg.  Eventually overwrites existing files.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_cfg (ir_graph *irg);
 
@@ -99,7 +107,7 @@ void dump_cfg (ir_graph *irg);
  *  name of the entity describing the procedure (irg->entity) and the
  *  ending -type.vcg.  Eventually overwrites existing files.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_type_graph (ir_graph *irg);
 
@@ -114,7 +122,7 @@ void dump_type_graph (ir_graph *irg);
  *   format.
  *   Dumps the graph to a file named All_types.vcg.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_all_types (void);
 
@@ -149,7 +157,7 @@ void dump_class_hierarchy (bool entities);
  *  name of the entity describing the procedure (irg->entity) and the
  *  ending -all.vcg.  Eventually overwrites existing files.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_ir_graph_w_types (ir_graph *irg);
 
@@ -167,7 +175,7 @@ void dump_ir_graph_w_types (ir_graph *irg);
  *  name of the entity describing the procedure (irg->entity) and the
  *  ending -all.vcg.  Eventually overwrites existing files.
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_ir_block_graph_w_types (ir_graph *irg);
 
@@ -217,7 +225,7 @@ typedef void dump_graph_func(ir_graph *irg);
  *   - dump_type_graph()
  *   - dump_ir_graph_w_types()
  *
- * @see turn_of_edge_labels()
+ * @see turn_off_edge_labels()
  */
 void dump_all_ir_graphs (dump_graph_func *dump_graph);
 
@@ -240,6 +248,11 @@ void turn_off_edge_labels(void);
  *   Default setting: false.
  */
 void dump_consts_local(bool b);
+/**
+ * Returns false if dump_out_edge_flag or dump_loop_information_flag
+ * are set, else returns dump_const_local_flag.
+ */
+bool get_opt_dump_const_local(void);
 
 /**
  *   Turns off dumping the values of constant entities. Makes type graphs
@@ -252,6 +265,7 @@ void turn_off_constant_entity_values(void);
  *   alive
  */
 void dump_keepalive_edges(bool b);
+bool get_opt_dump_keepalive_edges(void);
 
 /**
  *   Turns on dumping the out edges starting from the Start block in
@@ -271,6 +285,17 @@ void dump_dominator_information(void);
  *   If the loops are interprocedural nodes can be missing.
  */
 void dump_loop_information(void);
+
+/**
+ * @see dump_loop_information()
+ */
 void dont_dump_loop_information(void);
 
+/**
+ *  Dump the information of type field specified in ana/irtypeinfo.h.
+ *  If the flag is set, the type name is output in [] in the node label,
+ *  else it is output as info.
+ */
+void dump_analysed_type_info(bool b);
+
 # endif /* _IRDUMP_H_ */