cleanup: Use get_Block_n_cfgpreds()/get_Block_cfgpred() instead of get_irn_arity...
[libfirm] / ir / ir / irssacons.c
index 2d78562..794b0fc 100644 (file)
@@ -41,21 +41,17 @@ static void prepare_blocks(ir_node *block, void *env)
 {
        unsigned        n_loc = current_ir_graph->n_loc;
        struct obstack *obst  = current_ir_graph->obst;
-  (void)env;
+       (void)env;
        /* reset mature flag */
        set_Block_matured(block, 0);
-       block->attr.block.graph_arr  = NEW_ARR_D(ir_node *, obst, n_loc);
+       block->attr.block.graph_arr = NEW_ARR_D(ir_node *, obst, n_loc);
        memset(block->attr.block.graph_arr, 0, sizeof(ir_node*) * n_loc);
        set_Block_phis(block, NULL);
 }
 
 void ssa_cons_start(ir_graph *irg, int n_loc)
 {
-       /* for now we support only phase_high graphs */
-       assert(irg->phase_state == phase_high);
-
-       /* reset the phase to phase building: some optimization might depend on it */
-       set_irg_phase_state(irg, phase_building);
+       add_irg_constraints(irg, IR_GRAPH_CONSTRAINT_CONSTRUCTION);
 
        irg_set_nloc(irg, n_loc);
 
@@ -74,8 +70,7 @@ static void finish_block(ir_node *block, void *env)
 {
        (void)env;
 
-       if (!get_Block_matured(block))
-               mature_immBlock(block);
+       mature_immBlock(block);
 }
 
 void ssa_cons_finish(ir_graph *irg)