X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Flibfirm%2Fexecfreq.h;h=a301e9169dd6a18160528436a6fccd3211c7016d;hb=eff21a4b5b5c5fe09ad5d43129105f58cd1ce70e;hp=7e65213f66d10abb31cc47e1170e1364de4d702c;hpb=74d5a9023b48f346eead323a74e28297659e34b7;p=libfirm diff --git a/include/libfirm/execfreq.h b/include/libfirm/execfreq.h index 7e65213f6..a301e9169 100644 --- a/include/libfirm/execfreq.h +++ b/include/libfirm/execfreq.h @@ -22,7 +22,6 @@ * @brief Compute an estimate of basic block executions. * @author Adam M. Szalkowski * @date 28.05.2006 - * @version $Id$ */ #ifndef FIRM_ANA_EXECFREQ_H #define FIRM_ANA_EXECFREQ_H @@ -30,31 +29,37 @@ #include "firm_types.h" #include "begin.h" -struct ir_exec_freq; - /** - * Create execfreq structure (to be used with set_execfreq) + * @ingroup irana + * @defgroup execfreq Basic Block Execution Frequency + * @{ */ + +/** Creates execfreq structure (to be used with set_execfreq) */ FIRM_API ir_exec_freq *create_execfreq(ir_graph *irg); /** - * Set execution frequency of a basic block + * Sets execution frequency of a basic block */ FIRM_API void set_execfreq(ir_exec_freq *ef, const ir_node *block, double freq); -/** - * Create execfreq structure and initialize with estimated frequencies - */ +/** Creates execfreq structure and initialize with estimated frequencies. */ FIRM_API ir_exec_freq *compute_execfreq(ir_graph *irg, double loop_weight); +/** Frees memory occupied by execution frequency structure @p ef. */ FIRM_API void free_execfreq(ir_exec_freq *ef); +/** Returns execution frequency of block @p block. */ FIRM_API double get_block_execfreq(const ir_exec_freq *ef, const ir_node *block); +/** Returns execution frequency of block @p block, scaled into the range + * of an unsigned long type. */ FIRM_API unsigned long get_block_execfreq_ulong(const ir_exec_freq *ef, const ir_node *block); +/** @} */ + #include "end.h" #endif