X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbespill.c;h=40339e8b75fb4810718d65324bbc9746899590c3;hb=b9d45e08e23bcf058fa8f2d9e18dd78e8cccd044;hp=0477a0fbf82d4fd1c6386787d02d8baa4e6498ef;hpb=839487dfb4a714fa7e66063495ade6a3726040ef;p=libfirm diff --git a/ir/be/bespill.c b/ir/be/bespill.c index 0477a0fbf..40339e8b7 100644 --- a/ir/be/bespill.c +++ b/ir/be/bespill.c @@ -14,6 +14,7 @@ #include "irnode_t.h" #include "ircons_t.h" #include "iredges_t.h" +#include "irbackedge_t.h" #include "irprintf.h" #include "ident_t.h" #include "type_t.h" @@ -203,7 +204,6 @@ void be_spill_phi(spill_env_t *env, ir_node *node) { // if we had a spill for the phi value before, then remove this spill from // schedule, as we will remove it in the insert spill/reload phase if(spill->spill != NULL && !is_Phi(spill->spill)) { - //sched_remove(spill->spill); spill->old_spill = spill->spill; spill->spill = NULL; } @@ -503,6 +503,7 @@ static ir_node *do_remat(spill_env_t *env, ir_node *spilled, ir_node *reloader) get_irn_arity(spilled), ins); copy_node_attr(spilled, res); + new_backedge_info(res); DBG((env->dbg, LEVEL_1, "Insert remat %+F before reloader %+F\n", res, reloader)); @@ -527,7 +528,6 @@ void be_insert_spills_reloads(spill_env_t *env) { spill_info_t *si; /* process each spilled node */ - DBG((env->dbg, LEVEL_1, "Insert spills and reloads:\n")); for(si = set_first(env->spills); si; si = set_next(env->spills)) { reloader_t *rld; ir_mode *mode = get_irn_mode(si->spilled_node);