From: Matthias Braun Date: Tue, 9 Mar 2010 15:38:51 +0000 (+0000) Subject: fix doxygen errors and warnings; add some missing declarations X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=069bc5fb3a3fa261f842524415fcdb040efd767f;p=libfirm fix doxygen errors and warnings; add some missing declarations [r27274] --- diff --git a/include/libfirm/height.h b/include/libfirm/height.h index b5ce0768b..97e407505 100644 --- a/include/libfirm/height.h +++ b/include/libfirm/height.h @@ -27,6 +27,8 @@ #ifndef FIRM_ANA_HEIGHTS_H #define FIRM_ANA_HEIGHTS_H +#include "firm_types.h" + typedef struct _heights_t heights_t; /** diff --git a/include/libfirm/ircons.h b/include/libfirm/ircons.h index 779ae6b18..80b2bbe16 100644 --- a/include/libfirm/ircons.h +++ b/include/libfirm/ircons.h @@ -1818,7 +1818,6 @@ ir_node *new_rd_Proj(dbg_info *db, ir_node *arg, ir_mode *mode, long proj); * Represents the default control flow of a Switch-Cond node. * * @param *db A pointer for debug information. - * @param *block The IR block the node belongs to. * @param arg A node producing a tuple. * @param max_proj The end position of the value in the tuple. */ @@ -1886,7 +1885,8 @@ ir_node *new_rd_Unknown(dbg_info *db, ir_graph *irg, ir_mode *m); * * @param *db A pointer for debug information. * @param *block The block the node belong to. - * @param *callee The call node visible in the intra procedural view. + * @param *ptr pointer to the called function + * @param *call associated call operation */ ir_node *new_rd_CallBegin(dbg_info *db, ir_node *block, ir_node *ptr, ir_node *call); @@ -2567,7 +2567,6 @@ ir_node *new_r_Proj(ir_node *arg, ir_mode *mode, long proj); * * Represents the default control flow of a Switch-Cond node. * - * @param *block The IR block the node belongs to. * @param arg A node producing a tuple. * @param max_proj The end position of the value in the tuple. */ @@ -2638,7 +2637,8 @@ ir_node *new_r_Unknown(ir_graph *irg, ir_mode *m); * node. * * @param *block The block the node belong to. - * @param *callee The call node visible in the intra procedural view. + * @param *ptr pointer to the called function + * @param *call associated call operation */ ir_node *new_r_CallBegin(ir_node *block, ir_node *ptr, ir_node *call); @@ -3451,7 +3451,8 @@ ir_node *new_d_Unknown(dbg_info *db, ir_mode *m); * node.Adds the node to the block in current_ir_block. * * @param *db A pointer for debug information. - * @param *callee The call node visible in the intra procedural view. + * @param *ptr pointer to the called function + * @param *call associated call operation */ ir_node *new_d_CallBegin(dbg_info *db, ir_node *ptr, ir_node *call); @@ -3846,7 +3847,8 @@ ir_node *new_Builtin(ir_node *store, int arity, ir_node *in[], * constructor copies the method pointer input from the passed Call * node. Adds the node to the block in current_ir_block. * - * @param *callee A pointer to the called procedure. + * @param *ptr pointer to the called function + * @param *call associated call operation */ ir_node *new_CallBegin(ir_node *ptr, ir_node *call); diff --git a/include/libfirm/irdom.h b/include/libfirm/irdom.h index 705d0fd4d..c9d001b8c 100644 --- a/include/libfirm/irdom.h +++ b/include/libfirm/irdom.h @@ -79,6 +79,7 @@ void set_Block_postdom_pre_num(ir_node *bl, int num); * @return The pre-order number. */ unsigned get_Block_dom_tree_pre_num(const ir_node *bl); +unsigned get_Block_pdom_tree_pre_num(const ir_node *bl); /** * Get the largest pre-order number found in the subtree of the @@ -87,6 +88,7 @@ unsigned get_Block_dom_tree_pre_num(const ir_node *bl); * @return The largest pre-order number of block's dominator subtree. */ unsigned get_Block_dom_max_subtree_pre_num(const ir_node *bl); +unsigned get_Block_pdom_max_subtree_pre_num(const ir_node *bl); /** * Get the first node in the list of nodes dominated by a given block. @@ -100,6 +102,7 @@ unsigned get_Block_dom_max_subtree_pre_num(const ir_node *bl); * @return The first node dominated by @p bl. */ ir_node *get_Block_dominated_first(const ir_node *bl); +ir_node *get_Block_postdominated_first(const ir_node *bl); /** * Get the next node in a list of nodes which are dominated by some @@ -109,6 +112,7 @@ ir_node *get_Block_dominated_first(const ir_node *bl); * @return The next node in this list or NULL if it was the last. */ ir_node *get_Block_dominated_next(const ir_node *dom); +ir_node *get_Block_postdominated_next(const ir_node *dom); /** * Iterate over all nodes which are immediately dominated by a given diff --git a/include/libfirm/irdump.h b/include/libfirm/irdump.h index 518c040cf..78c69f679 100644 --- a/include/libfirm/irdump.h +++ b/include/libfirm/irdump.h @@ -191,11 +191,17 @@ void dump_ir_graph_file(ir_graph *irg, FILE *out); * @see turn_off_edge_labels() */ void dump_ir_block_graph(ir_graph *irg, const char *suffix); + +/** + * Does the same as dump_ir_block_graph but dumps to a stream + * @see dump_ir_block_graph() + */ void dump_ir_block_graph_file(ir_graph *irg, FILE *out); /** Dump a firm graph without explicit block nodes but grouped in extended blocks. * - * @param irg The firm graph to be dumped. + * @param irg The firm graph to be dumped. + * @param suffix suffix to append after the irgname (but before the .vcg) * * @return * A file containing the firm graph in vcg format. @@ -210,6 +216,11 @@ void dump_ir_block_graph_file(ir_graph *irg, FILE *out); * @see turn_off_edge_labels() */ void dump_ir_extblock_graph(ir_graph *irg, const char *suffix); + +/** + * Does the same as dump_ir_extrblock_graph but dumps to a stream + * @see dump_ir_extblock_graph() + */ void dump_ir_extblock_graph_file(ir_graph *irg, FILE *out); /** Dumps all graphs in interprocedural view to a file named All_graphs\.vcg. @@ -234,6 +245,11 @@ void dump_all_cg_block_graph(const char *suffix); * @see turn_off_edge_labels() */ void dump_ir_graph_w_types(ir_graph *irg, const char *suffix); + +/** + * Does the same as dump_ir_graph_w_types but dumps to a stream + * @see dump_ir_graph_w_types() + */ void dump_ir_graph_w_types_file(ir_graph *irg, FILE *out); /** Dumps a firm graph and all the type information needed for Calls, @@ -549,7 +565,8 @@ void dump_types_as_text(unsigned verbosity, const char *suffix); /** Dumps all global variables as text. * - * @param suffix A suffix for the file name. + * @param verbosity verbosity flag + * @param suffix A suffix for the file name. * * Dumps a text representation of the entities in the global type. * @@ -646,6 +663,11 @@ void dump_backedge_information(int flag); */ void set_opt_dump_analysed_type_info(int flag); +/** + * dump iredges (new style out edges) + */ +void dump_new_edges(int flag); + /** Write the address of a node into the vcg info. * * This is off per default for automatic comparisons of diff --git a/include/libfirm/irextbb.h b/include/libfirm/irextbb.h index d40ff734b..77f3e7f08 100644 --- a/include/libfirm/irextbb.h +++ b/include/libfirm/irextbb.h @@ -87,7 +87,8 @@ ir_visited_t get_extbb_visited(const ir_extblk *blk); /** * Sets the visited counter of an extended block. * - * @param blk the extended basic block + * @param blk the extended basic block + * @param visited new value for the visited counter */ void set_extbb_visited(ir_extblk *blk, ir_visited_t visited); diff --git a/include/libfirm/irio.h b/include/libfirm/irio.h index a331b51e2..1f4fad500 100644 --- a/include/libfirm/irio.h +++ b/include/libfirm/irio.h @@ -48,10 +48,11 @@ void ir_export(const char *filename); void ir_export_file(FILE *output, const char *outputname); /** - * Exports the given ir graph to the given file in a textual form. + * Write the given ir graph to a stream in a textual format * - * @param irg the ir graph - * @param filename the name of the resulting file + * @param irg the ir graph + * @param output output stream the irg is written to + * @param outputname a name for the output stream (used for error messages) * * Exports the type graph used by the given graph and the graph itself. */ diff --git a/include/libfirm/irnode.h b/include/libfirm/irnode.h index ec26feb53..e91539d6b 100644 --- a/include/libfirm/irnode.h +++ b/include/libfirm/irnode.h @@ -1180,6 +1180,12 @@ int is_Bad(const ir_node *node); int is_NoMem(const ir_node *node); /** Returns true if node is a Start node. */ int is_Start(const ir_node *node); +/** Returns true if node is an End node. */ +int is_End(const ir_node *node); +/** Returns true if node is an EndExcept node. */ +int is_EndExcept(const ir_node *node); +/** Returns true if node is an EndReg node. */ +int is_EndReg(const ir_node *node); /** Returns true if node is a Minus node. */ int is_Minus(const ir_node *node); /** Returns true if node is a Abs node. */ @@ -1274,8 +1280,16 @@ int is_IJmp(const ir_node *node); int is_Raise(const ir_node *node); /** Returns true if a node is an ASM node. */ int is_ASM(const ir_node *node); -/** Returns true if a node is an Dummy node. */ +/** Returns true if a node is a Dummy node. */ int is_Dummy(const ir_node *node); +/** Returns true if a node is an Anchor node */ +int is_Anchor(const ir_node *node); +/** Returns true if a node is a Borrow node */ +int is_Borrow(const ir_node *node); +/** Returns true if a node is a Break node */ +int is_Break(const ir_node *node); +/** Returns true if a node is an instff node */ +int is_InstOf(const ir_node *node); /** Returns true if node is a Proj node or a Filter node in INTRA-procedural view. */ int is_Proj(const ir_node *node); /** Returns true if node is a Filter node. */ @@ -1302,9 +1316,17 @@ ir_mode *get_divop_resmod(const ir_node *node); int is_irn_forking(const ir_node *node); /** - * Copies all attributes stored in the old node to the new node. + * Copies attributes stored in the old node to a new node. * Assumes both have the same opcode and sufficient size. - * @param irg The irg of the new_node (get_irn_irg on it might not work yet) + * + * @param irg The irg of the new_node (get_irn_irg on it might not work + * yet) + * @param old_node the node where the attributes are copied from + * @param new_node node the attributes get copies to. + * + * This copies all essential information to the new node. It does not copy + * temporal or calculated information like visited flags or results of dominance + * or loop calculations */ void copy_node_attr(ir_graph *irg, const ir_node *old_node, ir_node *new_node); diff --git a/include/libfirm/iroptimize.h b/include/libfirm/iroptimize.h index 9c080c87c..552a54d68 100644 --- a/include/libfirm/iroptimize.h +++ b/include/libfirm/iroptimize.h @@ -872,8 +872,12 @@ void inline_functions(unsigned maxsize, int inline_threshold, * @param name the name of this pass or NULL * @param maxsize Do not inline any calls if a method has more than * maxsize firm nodes. It may reach this limit by - * inlineing. + * inlineing. * @param inline_threshold inlining threshold + * @param after_inline_opt a function that is called after inlining a + * procedure. You should run fast local optimisations + * here which cleanup the graph before further + * inlining * * @return the newly created ir_prog pass */ diff --git a/include/libfirm/typerep.h b/include/libfirm/typerep.h index 9cbd56a84..a1c6a1e2b 100644 --- a/include/libfirm/typerep.h +++ b/include/libfirm/typerep.h @@ -299,6 +299,7 @@ const char *get_volatility_name(ir_volatility var); unsigned get_entity_alignment(const ir_entity *entity); /** Allows you to override the type alignment for an entity. + * @param entity the entity * @param alignment alignment in bytes */ void set_entity_alignment(ir_entity *entity, unsigned alignment); @@ -1607,7 +1608,6 @@ int is_Struct_type(const ir_type *strct); /** Create a new method type. * - * @param name the name (ident) of this type * @param n_param the number of parameters * @param n_res the number of results * @@ -1618,7 +1618,6 @@ ir_type *new_type_method(int n_param, int n_res); /** Create a new method type with debug information. * - * @param name the name (ident) of this type * @param n_param the number of parameters * @param n_res the number of results * @param db user defined debug information