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);
/**
* @param pred a predecessor block of block
*
* @return the position of pred in block or -1
- *
- * @note When using the old extended basic block form for blocks
- * with exception exists, a predecessor block might have more
- * than one position. In that case it is not specified, with is returned.
*/
FIRM_API int get_Block_cfgpred_pos(const ir_node *block, const ir_node *pred);
/** Returns 1 if a block is marked as visited */
FIRM_API int Block_block_visited(const ir_node *node);
-/** Returns the extended basic block a block belongs to. */
-FIRM_API ir_extblk *get_Block_extbb(const ir_node *block);
-/** Sets the extended basic block a block belongs to. */
-FIRM_API void set_Block_extbb(ir_node *block, ir_extblk *extblk);
/** Returns the ir_graph this Block belongs to. */
FIRM_API ir_graph *get_Block_irg(const ir_node *block);
/** Returns the entity for a Block (creating it if necessary) */
* @{
*/
-/**
- * Returns 1 if irg in phase phase_building and the Phi has zero
- * predecessors. It's a "Phi0" then.
- */
-FIRM_API int is_Phi0(const ir_node *n);
/**
* Returns all phi predecessors as array
*/
*/
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)
*/