/**
* solves a system of linear equations and returns 0 if successful
*
- * @param A the linear equations as matrix
- * @param b the result vector, will contain the result if successful
+ * @param A the linear equations as matrix
+ * @param b the result vector, will contain the result if successful
+ * @param nsize the size of the equation system
*/
int firm_gaussjordansolve(double *A, double *b, int nsize);
** "Stanford GraphGase", but I made changes to this code.
** As asked by the copyright node of the "Stanford GraphGase",
** I hereby proclaim that this file are *NOT* part of the
- ** "Stanford GraphGase" distrubition!
+ ** "Stanford GraphGase" distribution!
**
** This file is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied
void hungarian_remv(hungarian_problem_t *p, int left, int right);
/**
- * Prepares the cost matrix, dependend on the given mode.
+ * Prepares the cost matrix dependent on the given mode.
*
* @param p The hungarian object
* @param mode HUNGARIAN_MODE_MAXIMIZE_UTIL or HUNGARIAN_MODE_MINIMIZE_COST (default)
/**
* Print the cost matrix.
- * @param p The hungarian object
+ * @param p The hungarian object
+ * @param cost_width The minimum field width of the costs
*/
void hungarian_print_costmatrix(hungarian_problem_t *p, int cost_width);
* Creates a new pset.
*
* @param func The compare function of this pset.
- * @param slots Initial number of collision chains. I.e., #slots
+ * @param slots Initial number of collision chains. I.e., \#slots
* different keys can be hashed without collisions.
*
* @returns
* Creates a new set.
*
* @param func The compare function of this set.
- * @param slots Initial number of collision chains. I.e., #slots
+ * @param slots Initial number of collision chains. I.e., \#slots
* different keys can be hashed without collisions.
*
* @returns
* Never called from libFirm should be called from user.
*
* @param fname base name of the statistic output file
- * @param phase a phase name. Prefix will be firmstat-<phase>-
+ * @param phase a phase name. Prefix will be firmstat-\<phase\>-
*/
void stat_dump_snapshot(const char *fname, const char *phase);
*
* @param name the name of this pass or NULL
* @param fname base name of the statistic output file
- * @param phase a phase name. Prefix will be firmstat-<phase>-
+ * @param phase a phase name. Prefix will be firmstat-\<phase\>-
*
* @return the newly created ir_prog pass
*/
* This function may be NULL, new_id_from_chars()
* is then used to emulate its behavior.
*
- * @param str - the string which shall be stored
+ * @param str the string which shall be stored
*/
ident *(*new_id_from_str)(void *handle, const char *str);
/**
* Store a string and create an ident.
*
- * @param str - the string (or whatever) which shall be stored
- * @param len - the length of the data in bytes
+ * @param str the string (or whatever) which shall be stored
+ * @param len the length of the data in bytes
*/
ident *(*new_id_from_chars)(void *handle, const char *str, int len);
* This function may be NULL, get_id_str() is then used
* to emulate its behavior.
*
- * @param id - the ident
+ * @param id the ident
*/
int (*get_id_strlen)(void *handle, ident *id);
*
* Copies the string. @p str must be zero terminated
*
- * @param str - the string which shall be stored
+ * @param str the string which shall be stored
*
- * @return id - a handle for the generated ident
+ * @return id a handle for the generated ident
*
* @see get_id_str(), get_id_strlen()
*/
* Stores a string in the ident module and returns a handle for the string.
* Copies the string. This version takes non-zero-terminated strings.
*
- * @param str - the string (or whatever) which shall be stored
- * @param len - the length of the data in bytes
+ * @param str the string (or whatever) which shall be stored
+ * @param len the length of the data in bytes
*
- * @return id - a handle for the generated ident
+ * @return id a handle for the generated ident
*
* @see new_id_from_str(), get_id_strlen()
*/
* Returns the string represented by id. This string is
* NULL terminated. The string may not be changed.
*
- * @param id - the ident
+ * @param id the ident
*
- * @return cp - a string
+ * @return cp a string
*
* @see new_id_from_str(), new_id_from_chars(), get_id_strlen()
*/
/**
* Returns the length of the string represented by an ident.
*
- * @param id - the ident
+ * @param id the ident
*
- * @return len - the length of the string
+ * @return len the length of the string
*
* @see new_id_from_str(), new_id_from_chars(), get_id_str()
*/
/**
* Returns true if prefix is a prefix of an ident.
*
- * @param prefix - the prefix
- * @param id - the ident
+ * @param prefix the prefix
+ * @param id the ident
*
* @see new_id_from_str(), new_id_from_chars(), get_id_str(), id_is_prefix()
*/
/**
* Returns true if suffix is a suffix of an ident.
*
- * @param suffix - the suffix
- * @param id - the ident
+ * @param suffix the suffix
+ * @param id the ident
*
* @see new_id_from_str(), new_id_from_chars(), get_id_str(), id_is_prefix()
*/
int id_is_suffix (ident *suffix, ident *id);
-/**
- * Returns true if infix is contained in id. (Can be suffix or prefix)
- *
- * @param infix - the infix
- * @param id - the ident to search in
- *
- * @see new_id_from_str(), new_id_from_chars(), get_id_str(), id_is_prefix()
- */
-/* int id_contains(ident *infix, ident *id); */
-
/**
* Return true if an ident contains a given character.
*
- * @param id - the ident
- * @param c - the character
+ * @param id the ident
+ * @param c the character
*
* @see new_id_from_str(), new_id_from_chars(), get_id_str()
*/
void dump_ir_extblock_graph(ir_graph *irg, const char *suffix);
void dump_ir_extblock_graph_file(ir_graph *irg, FILE *out);
-/** Dumps all graphs in interprocedural view to a file named All_graphs<suffix>.vcg.
+/** Dumps all graphs in interprocedural view to a file named All_graphs\<suffix\>.vcg.
*
* @param suffix A suffix for the file name.
*/
*
* Dumps the graph to a file. The file name is constructed from the
* name of the entity describing the procedure the passed node is
- * in, suffix and the ending -subg_<nr>.vcg. nr is a unique number
+ * in, suffix and the ending -subg_\<nr\>.vcg. nr is a unique number
* for each graph dumped. Eventually overwrites existing files.
*
* @return
/** Dump the call graph.
*
- * Dumps the callgraph to a file "Callgraph"<suffix>".vcg".
+ * Dumps the callgraph to a file "Callgraph"\<suffix\>".vcg".
*
* @param suffix A suffix for the file name.
*
/**
* Dump a standalone loop tree, which contains the loop nodes and the firm nodes
* belonging to one loop packed together in one subgraph. Dumps to file
- * <name of irg><suffix>-looptree.vcg
+ * \<name of irg\>\<suffix\>-looptree.vcg
* Turns on edge labels by default.
*
* Implementing this dumper was stimulated by Florian Liekwegs similar dumper.
/** Dumps the firm nodes in the sub-loop-tree of loop to a graph.
*
* Dumps the loop nodes if dump_loop_information() is set.
- * The name of the file is loop_<loop_nr><suffix>.vcg.
+ * The name of the file is loop_<loop_nr>\<suffix\>.vcg.
*
* @param l Dump the loop tree for this loop.
* @param suffix A suffix for the file name.
/** Dumps the loop tree over the call graph.
*
* See for yourself what you can use this for.
- * The filename is "Callgraph_looptree<suffix>.vcg".
+ * The filename is "Callgraph_looptree\<suffix\>.vcg".
*
* @param suffix A suffix for the file name.
*/
* but the relations between the nodes only implicitly.
*
* The file name is the graph name (get_entity_name()), appended by
- * <suffix>.txt.
+ * \<suffix\>.txt.
*/
void dump_graph_as_text(ir_graph *irg, const char *suffix);
* the global type nor frame types or the like.
*
* The file name is the program name (get_irp_name()), or 'TextTypes'
- * if the program name is not set, appended by <suffix>-types.txt.
+ * if the program name is not set, appended by \<suffix\>-types.txt.
* For verbosity see the documentation of the verbosity flags above.
*/
void dump_types_as_text(unsigned verbosity, const char *suffix);
* Dumps a text representation of the entities in the global type.
*
* The file name is the program name (get_irp_name()), or 'TextTypes'
- * if the program name is not set, appended by <suffix>-globals.txt.
+ * if the program name is not set, appended by \<suffix\>-globals.txt.
* For verbosity see the documentation of the verbosity flags above.
*/
void dump_globals_as_text(unsigned verbosity, const char *suffix);
* @param irn The node.
* @param edge An ir_edge_t pointer which shall be set to the current edge.
* @param ne The next edge, enables alteration safe edge processing.
+ * @param kind The kind of the edge.
*/
#define foreach_out_edge_kind_safe(irn, edge, ne, kind) \
for((edge) = (get_irn_out_edge_first_kind(irn, kind)), (ne) = ((edge) ? (get_irn_out_edge_next(irn, edge)) : NULL); \
/**
* Get the edge object of an outgoing edge at a node.
- * @param irg The graph, the node is in.
- * @param irn The node at which the edge originates.
- * @param pos The position of the edge.
+ * @param irg The graph, the node is in.
+ * @param irn The node at which the edge originates.
+ * @param pos The position of the edge.
+ * @param kind The kind of the edge.
* @return The corresponding edge object or NULL,
* if no such edge exists.
*/
* Set the memory disambiguator options for a graph.
*
* @param irg the graph
- * @param option a set of options
+ * @param options a set of options
*/
void set_irg_memory_disambiguator_options(ir_graph *irg, unsigned options);
/**
* Set the global disambiguator options for all graphs not having local options.
*
- * @param option a set of options
+ * @param options a set of options
*/
void set_irp_memory_disambiguator_options(unsigned options);
/**
* Creates an ir_graph pass for do_gvn_pre().
*
- * @param dump should this pass result be dumped?
+ * @param name the name of this pass or NULL
*
* @return the newly created ir_graph pass
*/
* from a SymConst node that references the entity representing the called
* method.
*
- * @param size maximum function size
+ * @param irg the graph
+ * @param size maximum function size
*
* The size argument is a rough measure for the code size of the method:
* Methods where the obstack containing the firm graph is smaller than
* size are inlined. Further only a limited number of calls are inlined.
* If the method contains more than 1024 inlineable calls none will be
- * nlined.
+ * inlined.
* Inlining is only performed if flags `optimize' and `inlineing' are set.
* The graph may not be in state phase_building.
* It is recommended to call local_optimize_graph() after inlining as this
* Heuristic inliner. Calculates a benefice value for every call and inlines
* those calls with a value higher than the threshold.
*
- * @param maxsize Do not inline any calls if a method has more than
- * maxsize firm nodes. It may reach this limit by
- * inlineing.
- * @param threshold inlining threshold
+ * @param maxsize Do not inline any calls if a method has more than
+ * maxsize firm nodes. It may reach this limit by
+ * inlining.
+ * @param inline_threshold inlining threshold
*/
void inline_functions(unsigned maxsize, int inline_threshold);
/**
* Creates an ir_prog pass for inline_functions().
*
- * @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.
- * @param threshold inlining 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.
+ * @param inline_threshold inlining threshold
*
* @return the newly created ir_prog pass
*/
* Creates a new ir_prog (a module or compilation unit),
* returns it and sets irp with it.
*
- * @param module_name the name of this irp (module)
+ * @param name the name of this irp (module)
*/
ir_prog *new_ir_prog(const char *name);
* Initializes the type information module.
* Generates a type inititial_type and sets the type of all nodes to this type.
* Calling set/get_irn_typeinfo_type() is invalid before calling init. Requires memory
- * in the order of MIN(<calls to set_irn_typeinfo_type>, #irnodes).
+ * in the order of MIN(\<calls to set_irn_typeinfo_type\>, \#irnodes).
*/
void init_irtypeinfo(void);
void free_irtypeinfo(void);
* Return the predecessor region at position pos.
*
* @param reg the region
+ * @param pos the position number
*/
ir_region *get_region_pred(const ir_region *reg, int pos);
/** Cast node that cast a pointer to this type. */
ir_node *get_type_cast(const ir_type *tp, int pos);
void add_type_cast(const ir_type *tp, ir_node *cast);
-/** Return number of upcasts. O(#casts). */
+/** Return number of upcasts. O(\#casts). */
int get_class_n_upcasts(const ir_type *clss);
-/** Return number of downcasts. O(#casts). */
+/** Return number of downcasts. O(\#casts). */
int get_class_n_downcasts(const ir_type *clss);
/* Access all pointer types that point to tp. */
* @param a the first tarval
* @param b the second tarval
*
- * @return a <<L>> b or tarval_bad
+ * @return a \<\<L\>\> b or tarval_bad
*/
tarval *tarval_rotl(tarval *a, tarval *b);
* precision loss.
*
* @param tv the tarval
- * param mode the mode to convert to
+ * @param mode the mode to convert to
*/
int tarval_ieee754_can_conv_lossless(tarval *tv, ir_mode *mode);
/** Compute transitive closure of the subclass/superclass and
* overwrites/overwrittenby relation.
*
- * This function walks over the ir (O(#types+#entities)) to compute the
+ * This function walks over the ir (O(\#types+\#entities)) to compute the
* transitive closure. */
void compute_inh_transitive_closure(void);
int is_Pointer_type(const ir_type *pointer);
/** Returns the first pointer type that has as points_to tp.
- * Not efficient: O(#types).
+ * Not efficient: O(\#types).
* If not found returns firm_unknown_type. */
ir_type *find_pointer_type_to_type(ir_type *tp);