X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbecopyilp2.c;h=1df4df35dc6282d139405965314b2d953a41d9de;hb=4ed245f5007168dab7850942a7ee6b6b29a19817;hp=946322dd6b7166eca05f4e0a526c1305104a3032;hpb=4794cb5f95f18ed6afee5c1cc33aaf5f39d3e4a2;p=libfirm diff --git a/ir/be/becopyilp2.c b/ir/be/becopyilp2.c index 946322dd6..1df4df35d 100644 --- a/ir/be/becopyilp2.c +++ b/ir/be/becopyilp2.c @@ -30,6 +30,8 @@ #include "config.h" #endif /* HAVE_CONFIG_H */ +#ifdef WITH_ILP + #include #include "pdeq.h" @@ -42,10 +44,10 @@ #define DEBUG_LVL 1 typedef struct _local_env_t { - firm_dbg_module_t *dbg; double time_limit; int first_x_var, last_x_var; pmap *nr_2_irn; + DEBUG_ONLY(firm_dbg_module_t *dbg;) } local_env_t; static void build_coloring_cstr(ilp_env_t *ienv) { @@ -72,8 +74,10 @@ static void build_coloring_cstr(ilp_env_t *ienv) { /* get assignable colors */ if (arch_register_req_is(&req, limited)) req.limited(req.limited_env, colors); - else - arch_put_non_ignore_regs(ienv->co->aenv, req.cls, colors); + else { + arch_register_class_put(req.cls, colors); + // bitset_andnot(colors, ienv->co->cenv->ignore_colors); + } /* add the coloring constraint */ cst_idx = lpp_add_cst(ienv->lp, NULL, lpp_equal, 1.0); @@ -377,7 +381,7 @@ static void extend_path(ilp_env_t *ienv, pdeq *path, ir_node *irn) { /* check for forbidden interferences */ len = pdeq_len(path); curr_path = alloca(len * sizeof(*curr_path)); - pdeq_copyl(path, curr_path); + pdeq_copyl(path, (const void **)curr_path); for (i=1; i