Commit f1bf8ef4 authored by Christoph Mallon's avatar Christoph Mallon
Browse files

Assure (post)dominance in opt_bool() and optimize_graph_df().

This should fix opt/jumpthreading4.c and opt/place.c when debug (in particular verification) is off.
parent 4012fe9f
......@@ -710,6 +710,8 @@ void opt_bool(ir_graph *const irg)
/* optimize simple Andb and Orb cases */
irg_walk_graph(irg, NULL, bool_walk, &env);
assure_irg_properties(irg, IR_GRAPH_PROPERTY_CONSISTENT_DOMINANCE);
/* now more complicated cases: find control flow And/Or and optimize. */
ir_reserve_resources(irg, IR_RESOURCE_BLOCK_MARK | IR_RESOURCE_PHI_LIST);
irg_walk_graph(irg, clear_block_infos, collect_phis, NULL);
......
......@@ -154,8 +154,11 @@ static void opt_walker(ir_node *n, deq_t *waitq)
void optimize_graph_df(ir_graph *irg)
{
if (get_opt_global_cse())
ir_graph_properties_t props = IR_GRAPH_PROPERTY_CONSISTENT_OUT_EDGES;
if (get_opt_global_cse()) {
set_irg_pinned(irg, op_pin_state_floats);
props |= IR_GRAPH_PROPERTY_CONSISTENT_DOMINANCE | IR_GRAPH_PROPERTY_CONSISTENT_POSTDOMINANCE;
}
/* enable unreachable code elimination,
* not that currently disabling algebraic simplifications disables all
......@@ -167,7 +170,7 @@ void optimize_graph_df(ir_graph *irg)
}
new_identities(irg);
assure_irg_properties(irg, IR_GRAPH_PROPERTY_CONSISTENT_OUT_EDGES);
assure_irg_properties(irg, props);
ir_reserve_resources(irg, IR_RESOURCE_IRN_LINK);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment