X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Flibfirm%2Firtypeinfo.h;h=45eaa912eb3f35ad6b2397c0b4c195a297a02a41;hb=fef8dc3eff6468d7d65485af8e1ac9884c504e1a;hp=83269ae31994ef4c3c122ef459e59d5a35f56c18;hpb=74d5a9023b48f346eead323a74e28297659e34b7;p=libfirm diff --git a/include/libfirm/irtypeinfo.h b/include/libfirm/irtypeinfo.h index 83269ae31..45eaa912e 100644 --- a/include/libfirm/irtypeinfo.h +++ b/include/libfirm/irtypeinfo.h @@ -22,7 +22,6 @@ * @brief Data structure to hold type information for nodes. * @author Goetz Lindenmaier * @date 28.8.2003 - * @version $Id$ * @brief * Data structure to hold type information for nodes. * @@ -58,10 +57,12 @@ FIRM_API ir_type *initial_type; * in the order of MIN(\, \#irnodes). */ FIRM_API void init_irtypeinfo(void); +/** Frees memory used by the type information module */ FIRM_API void free_irtypeinfo(void); /* ------------ Irgraph state handling. ------------------------------- */ +/** typeinfo information state */ typedef enum { ir_typeinfo_none, /**< No typeinfo computed, calls to set/get_irn_typeinfo_type() are invalid. */ @@ -71,7 +72,9 @@ typedef enum { because of other transformations. */ } ir_typeinfo_state; -FIRM_API void set_irg_typeinfo_state(ir_graph *irg, ir_typeinfo_state s); +/** Sets state of typeinfo information in graph @p irg to @p state. */ +FIRM_API void set_irg_typeinfo_state(ir_graph *irg, ir_typeinfo_state state); +/** Returns state of typeinfo information in graph @p irg. */ FIRM_API ir_typeinfo_state get_irg_typeinfo_state(const ir_graph *irg); /** Returns accumulated type information state information. @@ -81,20 +84,21 @@ FIRM_API ir_typeinfo_state get_irg_typeinfo_state(const ir_graph *irg); * or no type information. Returns ir_typeinfo_none if no irg contains type information. */ FIRM_API ir_typeinfo_state get_irp_typeinfo_state(void); -FIRM_API void set_irp_typeinfo_state(ir_typeinfo_state s); -/** If typeinfo is consistent, sets it to inconsistent. */ -FIRM_API void set_irp_typeinfo_inconsistent(void); +/** Sets state of typeinfo information for the current program to @p state */ +FIRM_API void set_irp_typeinfo_state(ir_typeinfo_state state); +/** Sets state of typeinfo information for the current program to #ir_typeinfo_inconsistent */ +FIRM_API void set_irp_typeinfo_inconsistent(void); /* ------------ Irnode type information. ------------------------------ */ /** Accessing the type information. * * These routines only work properly if the ir_graph is in state - * ir_typeinfo_consistent or ir_typeinfo_inconsistent. They - * assume current_ir_graph set properly. + * ir_typeinfo_consistent or ir_typeinfo_inconsistent. */ FIRM_API ir_type *get_irn_typeinfo_type(const ir_node *n); -FIRM_API void set_irn_typeinfo_type(ir_node *n, ir_type *tp); +/** Sets type information of procedure graph node @p node to type @p type. */ +FIRM_API void set_irn_typeinfo_type(ir_node *node, ir_type *type); #include "end.h"