X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbespill.c;h=573aaa1ab87e88206d0c6afc10fbaafcd4d99110;hb=69a5cd48b51a38cf6abc517bca2feef9f3a6c433;hp=034d30e072db13d359c49cee61c4c994b7292ecb;hpb=871d475ce46fde8939488624c9b9b3a73643f9cc;p=libfirm diff --git a/ir/be/bespill.c b/ir/be/bespill.c index 034d30e07..573aaa1ab 100644 --- a/ir/be/bespill.c +++ b/ir/be/bespill.c @@ -39,7 +39,7 @@ #include "belive_t.h" #include "beirg.h" #include "bearch.h" -#include "benode_t.h" +#include "benode.h" #include "besched.h" #include "bera.h" #include "beintlive_t.h" @@ -139,12 +139,6 @@ static void prepare_constr_insn(be_pre_spill_env_t *env, ir_node *node) if (rbitset_equal(req->limited, req2->limited, cls->n_regs)) continue; -#if 0 - /* Matze: looks fishy to me disabled it for now */ - if (be_is_Copy(get_irn_n(insn->irn, a_op->pos))) - continue; -#endif - copy = be_new_Copy(cls, block, in); stat_ev_int("constr_copy", 1); @@ -253,6 +247,9 @@ void be_pre_spill_prepare_constr(be_irg_t *birg, memset(&env, 0, sizeof(env)); env.birg = birg; env.cls = cls; + + be_assure_liveness(birg); + irg_block_walk_graph(irg, pre_spill_prepare_constr_walker, NULL, &env); }