From 92e21f48c54ba1b8b57c67a02346ef01daa907d2 Mon Sep 17 00:00:00 2001 From: Michael Beck Date: Sun, 2 Jul 2006 16:25:37 +0000 Subject: [PATCH] Make fp optimization dependent on the fp model. [r7984] --- ir/opt/reassoc.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ir/opt/reassoc.c b/ir/opt/reassoc.c index b0144db1c..e5ac87626 100644 --- a/ir/opt/reassoc.c +++ b/ir/opt/reassoc.c @@ -367,8 +367,11 @@ static void do_reassociation(ir_node *n, void *env) res = 0; - /* reassociation works only for integer or reference modes */ - if (op->ops.reassociate && (mode_is_int(mode) || mode_is_reference(mode))) { + /* for FP these optimizations are only allowed if fp_strict_algebraic is disabled */ + if (mode_is_float(mode) && get_irg_fp_model(current_ir_graph) & fp_strict_algebraic) + break; + + if (op->ops.reassociate) { res = op->ops.reassociate(&n); wenv->changes |= res; -- 2.20.1