Merge branch 'opt_manage'
[libfirm] / include / libfirm / interval_analysis.h
index 51c53d6..bec7181 100644 (file)
 #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.
- */
-FIRM_DLL int get_region_n_ins(void *region);
-FIRM_DLL void *get_region_in(void *region, int pos);
-FIRM_DLL 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.
  */
-FIRM_DLL 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.
  */
-FIRM_DLL 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.
  */
-FIRM_DLL 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.
- **/
-FIRM_DLL void construct_intervals(ir_graph *irg);
+ */
+FIRM_API void construct_intervals(ir_graph *irg);
 
 /** frees interval information of all graphs. */
-FIRM_DLL void free_intervals(void);
+FIRM_API void free_intervals(void);
 
-/** dump a graph with the intervals. File name suffix "-interval". */
-FIRM_DLL void dump_interval_graph(ir_graph *irg, const char *suffix);
+/** dump a vcg graph with the intervals */
+FIRM_API void dump_interval_graph(FILE *out, ir_graph *irg);
 
 #include "end.h"