From f0db3da558a6ba63a970489463d23b77f063f7d8 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Tue, 31 May 2011 13:23:44 +0200 Subject: [PATCH] always transform integer abs, even in GRAPH_STATE_KEEP_MUX --- ir/ir/iropt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ir/ir/iropt.c b/ir/ir/iropt.c index f83d623f7..3c89c5050 100644 --- a/ir/ir/iropt.c +++ b/ir/ir/iropt.c @@ -5503,9 +5503,6 @@ static ir_node *transform_node_Mux(ir_node *n) ir_node *f = get_Mux_false(n); ir_graph *irg = get_irn_irg(n); - if (is_irg_state(irg, IR_GRAPH_STATE_KEEP_MUX)) - return n; - /* implement integer abs: abs(x) = x^(x >>s 31) - (x >>s 31) */ if (get_mode_arithmetic(mode) == irma_twos_complement) { int abs = ir_mux_is_abs(sel, t, f); @@ -5527,6 +5524,9 @@ static ir_node *transform_node_Mux(ir_node *n) } } + if (is_irg_state(irg, IR_GRAPH_STATE_KEEP_MUX)) + return n; + if (is_Mux(t)) { ir_node* block = get_nodes_block(n); ir_node* c0 = sel; -- 2.20.1