-#ifdef NEED_SORT
-/**
- * Walker for cf_dependent_on().
- * This function searches a node tgt recursively from a given node
- * but is restricted to the given extended basic block.
- *
- * @return 1 if tgt was reachable from curr, 0 if not.
- */
-static int check_cf_dependence(ir_node *curr, ir_node *tgt, ir_extblk *extbb)
-{
- int n, i;
-
- /* Note: we did not include the leader in our serach, so
- there could not be any loops here. */
- if (get_Block_extbb(curr) != extbb)
- return 0;
-
- if (curr == tgt)
- return 1;
-
- for (i = 0, n = get_Block_n_cfgpreds(curr); i < n; ++i) {
- if (check_cf_dependence(get_Block_cfgpred_block(curr, i), tgt, extbb))
- return 1;
- }
- return 0;
-}
-
-/**
- * Check if a block is control dependent on another one.
- * Both blocks must be in the same extended basic block.
- * @param blk1 The first block.
- * @param blk2 The second block.
- * @return 1, if blk1 is control dependent (transitively) on blk2, 0 if not.
- */
-static int cf_dependent_on(ir_node *blk1, ir_node *blk2)
-{
- ir_extblk *extbb = get_Block_extbb(blk1);
- ir_graph *irg = get_irn_irg(blk1);
-
- assert(extbb == get_Block_extbb(blk2));
- return check_cf_dependence(blk1, blk2, extbb);
-}
-
-/**
- * Compare two blocks for dependency.
- *
- * @return
- * 0 if both blocks nodes are equal
- * 1 block b1 depends on block b2
- * -1 block b2 depends on block d2
- */
-static int block_order(const void *b1, const void *b2)
-{
- ir_node *n1 = *(ir_node **)b1;
- ir_node *n2 = *(ir_node **)b2;
-
- return n1 == n2 ? 0 : (cf_dependent_on(n1, n2) ? -1 : 1);
-}
-#endif /* NEED_SORT */
-