rename NO_BAD_BLOCKS to NO_BADS, remove unnecessary implication from opt_manage
authorMatthias Braun <matze@braunis.de>
Fri, 16 Sep 2011 11:22:00 +0000 (13:22 +0200)
committerMatthias Braun <matze@braunis.de>
Tue, 20 Sep 2011 07:34:23 +0000 (09:34 +0200)
include/libfirm/irgraph.h
ir/ir/irverify.c
ir/ir/unreachable.c
ir/opt/combo.c
ir/opt/opt_manage.c

index 8d6cbc2..d6386ba 100644 (file)
@@ -511,8 +511,8 @@ typedef enum {
        IR_GRAPH_STATE_OPTIMIZE_UNREACHABLE_CODE = 1U << 4,
        /** graph contains no critical edges */
        IR_GRAPH_STATE_NO_CRITICAL_EDGES         = 1U << 5,
-       /** graph contains no Bads */
-       IR_GRAPH_STATE_NO_BAD_BLOCKS             = 1U << 6,
+       /** graph contains no Bad nodes */
+       IR_GRAPH_STATE_NO_BADS                   = 1U << 6,
        /**
         * there exists no (obviously) unreachable code in the graph.
         * Unreachable in this context is code that you can't reach by following
index 69b2cd7..132e20d 100644 (file)
@@ -1760,7 +1760,7 @@ int irn_verify_irg(const ir_node *n, ir_graph *irg)
                        ir_printf("node %+F", n);
                );
        } else if (!is_Block(n) && is_irn_pinned_in_irg(n)
-                  && is_irg_state(irg, IR_GRAPH_STATE_NO_BAD_BLOCKS)) {
+                  && is_irg_state(irg, IR_GRAPH_STATE_NO_BADS)) {
                ASSERT_AND_RET_DBG(is_Block(get_nodes_block(n)) || is_Anchor(n),
                                "block input is not a block", 0,
                                ir_printf("node %+F", n);
index ea58a1e..c52bee2 100644 (file)
@@ -66,7 +66,7 @@ void remove_unreachable_blocks(ir_graph *irg)
        if (changed) {
                edges_deactivate(irg);
                clear_irg_state(irg, IR_GRAPH_STATE_CONSISTENT_OUTS);
-               clear_irg_state(irg, IR_GRAPH_STATE_NO_BAD_BLOCKS);
+               clear_irg_state(irg, IR_GRAPH_STATE_NO_BADS);
        }
        set_irg_state(irg, IR_GRAPH_STATE_NO_UNREACHABLE_CODE);
 }
index a08de84..5e5e6bb 100644 (file)
@@ -3607,7 +3607,7 @@ static ir_graph_state_t do_combo(ir_graph *irg)
 
 optdesc_t opt_combo = {
        "combo",
-       IR_GRAPH_STATE_NO_BAD_BLOCKS | IR_GRAPH_STATE_CONSISTENT_OUTS | IR_GRAPH_STATE_CONSISTENT_LOOPINFO,
+       IR_GRAPH_STATE_NO_BADS | IR_GRAPH_STATE_CONSISTENT_OUTS | IR_GRAPH_STATE_CONSISTENT_LOOPINFO,
        do_combo,
 };
 
index 5e00ba1..66ae017 100644 (file)
@@ -25,10 +25,6 @@ void perform_irg_optimization(ir_graph *irg, optdesc_t *opt)
        ir_graph_state_t required = opt->requirements;
        const bool dump = get_irp_optimization_dumps();
 
-       /* no bad block requires no unreachable code */
-       if (required & IR_GRAPH_STATE_NO_BAD_BLOCKS)
-               required |= IR_GRAPH_STATE_NO_UNREACHABLE_CODE;
-
        /** Some workarounds because information is currently duplicated */
        // FIXME should not be necessary!
        if (loopinfo_inconsistent == get_irg_loopinfo_state(irg))
@@ -39,7 +35,7 @@ void perform_irg_optimization(ir_graph *irg, optdesc_t *opt)
        PREPARE(IR_GRAPH_STATE_ONE_RETURN,               normalize_one_return)
        PREPARE(IR_GRAPH_STATE_NO_CRITICAL_EDGES,        remove_critical_cf_edges)
        PREPARE(IR_GRAPH_STATE_NO_UNREACHABLE_CODE,      remove_unreachable_blocks)
-       PREPARE(IR_GRAPH_STATE_NO_BAD_BLOCKS,            remove_bads)
+       PREPARE(IR_GRAPH_STATE_NO_BADS,                  remove_bads)
        PREPARE(IR_GRAPH_STATE_CONSISTENT_DOMINANCE,     assure_doms)
        PREPARE(IR_GRAPH_STATE_CONSISTENT_POSTDOMINANCE, assure_postdoms)
        PREPARE(IR_GRAPH_STATE_CONSISTENT_OUT_EDGES,     edges_assure)
@@ -64,7 +60,7 @@ void perform_irg_optimization(ir_graph *irg, optdesc_t *opt)
 #define INVALIDATE(state,func) if (!(state & new_irg_state)) {clear_irg_state(irg,state); func(irg);}
        INVALIDATE(IR_GRAPH_STATE_NO_CRITICAL_EDGES,        nop)
        INVALIDATE(IR_GRAPH_STATE_NO_UNREACHABLE_CODE,      nop)
-       INVALIDATE(IR_GRAPH_STATE_NO_BAD_BLOCKS,            nop)
+       INVALIDATE(IR_GRAPH_STATE_NO_BADS,                  nop)
        INVALIDATE(IR_GRAPH_STATE_ONE_RETURN,               nop)
        INVALIDATE(IR_GRAPH_STATE_CONSISTENT_DOMINANCE,     nop)
        INVALIDATE(IR_GRAPH_STATE_CONSISTENT_POSTDOMINANCE, nop)