From: Michael Beck Date: Mon, 7 Apr 2008 11:11:07 +0000 (+0000) Subject: - optimize Tuple nodes away before calling scalar replacement X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=9711085f3698c796399b634ed5e67e8c6d3b9717;p=libfirm - optimize Tuple nodes away before calling scalar replacement [r19163] --- diff --git a/ir/opt/opt_inline.c b/ir/opt/opt_inline.c index 0fd832886..9af7d528f 100644 --- a/ir/opt/opt_inline.c +++ b/ir/opt/opt_inline.c @@ -1995,9 +1995,14 @@ void inline_functions(int inline_threshold) { set_irg_doms_inconsistent(irg); set_irg_loopinfo_inconsistent(irg); - if (env->local_vars) - scalar_replacement_opt(irg); + /* scalar replacement does not work well with Tuple nodes, so optimize them away */ optimize_graph_df(irg); + + if (env->local_vars) { + if (scalar_replacement_opt(irg)) + optimize_graph_df(irg); + } + optimize_cf(irg); } if (env->got_inline || (env->n_callers_orig != env->n_callers)) {