X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=ir%2Fopt%2Freassoc.c;h=8cfcd8c2ecfed349f15eb90771454c6c2b84fe34;hb=7cfefaae5f011ad335c8c39f69569110705602ac;hp=4eaedc7eaf306b2322c84136a4499f1fc1bf7a6f;hpb=1ce363f80e6a204d4011f85813362d9bd1d0e7e4;p=libfirm diff --git a/ir/opt/reassoc.c b/ir/opt/reassoc.c index 4eaedc7ea..8cfcd8c2e 100644 --- a/ir/opt/reassoc.c +++ b/ir/opt/reassoc.c @@ -168,12 +168,13 @@ static int reassoc_Sub(ir_node **in) /* already constant, nothing to do */ return 0; } + mode = get_irn_mode(n); dbi = get_irn_dbg_info(n); /* Beware of SubP(P, Is) */ irn = new_rd_Minus(dbi, current_ir_graph, block, right, rmode); - irn = new_rd_Add(dbi, current_ir_graph, block, left, irn, get_irn_mode(n)); + irn = new_rd_Add(dbi, current_ir_graph, block, left, irn, mode); DBG((dbg, LEVEL_5, "Applied: %n - %n => %n + (-%n)\n", get_Sub_left(n), right, get_Sub_left(n), right));