FIRM_API void set_irn_in(ir_node *node, int arity, ir_node *in[]);
/**
- * Add a artificial dependency to the node.
- * The dependency is only inserted if it is not there already.
- * This is only allowed in phase_backend!
+ * Add an artificial dependency to the node.
*
* @param node The node.
* @param dep The dependency target.
- *
- * @return The index in the array (get_irn_dep with that index returns @p dep).
*/
-FIRM_API int add_irn_dep(ir_node *node, ir_node *dep);
+FIRM_API void add_irn_dep(ir_node *node, ir_node *dep);
/**
* Copy all dependencies from a node to another.
*/
FIRM_API void set_irn_dep(ir_node *node, int pos, ir_node *dep);
+/**
+ * Deletes the entry of the dependency array, that points to dep. Does nothing
+ * if no dependency exists.
+ *
+ * @param node the node to delete the dependency at
+ * @param dep the target of the dependency to delete
+ */
+FIRM_API void delete_irn_dep(ir_node *node, ir_node *dep);
+
/** Replaces the n-th predecessor of a node with a new one. */
FIRM_API void set_irn_n(ir_node *node, int n, ir_node *in);
/**
*/
FIRM_API dbg_info *get_irn_dbg_info(const ir_node *n);
-/**
- * Calculate a hash value of a node. Only inputs, mode and opcode are used.
- *
- * @param node the node to hash
- */
-FIRM_API unsigned firm_default_hash(const ir_node *node);
-
/**
* Returns a descriptive name of a node (containing type+number)
*/