fix a few warnings/bugs in optimized mode
[libfirm] / include / libfirm / interval_analysis.h
index 7fa6bdc..bec7181 100644 (file)
@@ -23,7 +23,7 @@
  * @author     Goetz Lindenmaier
  * @date       5.11.2004
  * @version    $Id$
- * @summary
+ * @brief
  *  Decompost control flow graph into acylic, hierarchic intervals.
  *
  *  The analysis is based on the control flow looptree.  An intervall
 #define FIRM_ANA_INTERVAL_ANALYSIS_H
 
 #include "firm_types.h"
+#include <stdio.h>
+#include "begin.h"
 
-/** The ins of regions:  regions are loops or blocks.
- *
- *  @todo: we should make a type for the regions, or reuse loop_element.
- */
-int   get_region_n_ins(void *region);
-void *get_region_in   (void *region, int pos);
-void  add_region_in   (void *region, void *in);
+/** The ins of regions:  regions are loops or blocks. */
+FIRM_API int get_region_n_ins(void *region);
+FIRM_API void *get_region_in(void *region, int pos);
+FIRM_API void add_region_in(void *region, void *in);
 
 
 /** The number of out edges of a region.
  *
  *  This number is useful for evaluation of execution frequencies.
  */
-int get_region_n_outs(void *region);
+FIRM_API int get_region_n_outs(void *region);
 
 /** The number of exception out edges of a region.
  *
  *  This number is useful for evaluation of execution frequencies.
  */
-int get_region_n_exc_outs(void *region);
+FIRM_API int get_region_n_exc_outs(void *region);
 
 /** The control flow operation corresponding to the loop-region in at
  *  position pos.
  */
-void *get_loop_cfop(void *region, int pos);
+FIRM_API void *get_loop_cfop(void *region, int pos);
 
 
 /** The algorithm to construct the interval graph.
  *
  *  Constructs the cf loop tree and leaves a valid version of it.
- *
- *  @todo: @@@ add flag that states correctness of interval analysis information
- *  to irg.
- **/
-void construct_intervals(ir_graph *irg);
-
+ */
+FIRM_API void construct_intervals(ir_graph *irg);
 
 /** frees interval information of all graphs. */
-void free_intervals(void);
-
-
-/** dump a graph with the intervals. File name suffix "-interval". */
-void dump_interval_graph(ir_graph *irg, const char *suffix);
+FIRM_API void free_intervals(void);
 
+/** dump a vcg graph with the intervals */
+FIRM_API void dump_interval_graph(FILE *out, ir_graph *irg);
 
-#define DDMR(X) if(is_ir_node(X)) DDMN(X); else DDML(X)
+#include "end.h"
 
 #endif