DEBUG_ONLY(static firm_dbg_module_t *dbg;)
/** Next partition number. */
-DEBUG_ONLY(static unsigned part_nr = 0);
+DEBUG_ONLY(static unsigned part_nr = 0;)
#ifdef DEBUG_libfirm
/**
INIT_LIST_HEAD(&part->blocks);
part->meet_block = meet_block;
part->n_blocks = 0;
- DEBUG_ONLY(part->nr = part_nr++);
+ DEBUG_ONLY(part->nr = part_nr++;)
list_add_tail(&part->part_list, &env->partitions);
return part;
} /* create_partition */
ir_node **ins, **phi_ins;
phi_t *repr_phi, *phi;
pair_t *repr_pair, *pair;
- int i, j, k, n, block_nr, n_phis;
+ int i, j, k, n, n_phis;
list_del(&repr->block_list);
/* collect new in arrays */
end = get_irg_end(irg);
- block_nr = 0;
list_for_each_entry(block_t, bl, &part->blocks, block_list) {
block = bl->block;
- ++block_nr;
DB((dbg, LEVEL_1, "%+F, ", block));
} /* find_liveouts */
/**
- * Check if the current block is the meet block of a its predecessors.
+ * Check if the current block is the meet block of its predecessors.
*/
static void check_for_cf_meet(ir_node *block, void *ctx)
{
k = 0;
for (i = n - 1; i >= 0; --i) {
ir_node *pred = get_Block_cfgpred(block, i);
- ir_node *pred_block;
/* pred must be a direct jump to us */
if (! is_Jmp(pred) && ! is_Raise(pred) && !is_Bad(pred))
continue;
- pred_block = get_nodes_block(skip_Proj(pred));
-
preds[k].pred = pred;
preds[k].index = i;
+ ++k;
}
if (k > 1)
/* register a debug mask */
FIRM_DBG_REGISTER(dbg, "firm.opt.blocks");
- DEBUG_ONLY(part_nr = 0);
+ DEBUG_ONLY(part_nr = 0;)
DB((dbg, LEVEL_1, "Shaping blocks for %+F\n", irg));
/* works better, when returns are placed at the end of the blocks */
if (res) {
/* control flow changed */
- set_irg_outs_inconsistent(irg);
set_irg_extblk_inconsistent(irg);
- set_irg_doms_inconsistent(irg);
- set_irg_loopinfo_inconsistent(irg);
+ clear_irg_state(irg, IR_GRAPH_STATE_CONSISTENT_DOMINANCE);
/* Calls might be removed. */
set_trouts_inconsistent();