DEBUG_ONLY(static firm_dbg_module_t *dbg = NULL;)
/* Make a fourcc for border checking. */
-#define BORDER_FOURCC FOURCC('B', 'O', 'R', 'D')
-
+#define BORDER_FOURCC FOURCC('B', 'O', 'R', 'D')
int has_reg_class(const be_chordal_env_t *env, const ir_node *irn)
{
*/
set_irn_link(irn, def);
- DEBUG_ONLY(b->magic = BORDER_FOURCC);
- DEBUG_ONLY(def->magic = BORDER_FOURCC);
+ DEBUG_ONLY(b->magic = BORDER_FOURCC;)
+ DEBUG_ONLY(def->magic = BORDER_FOURCC;)
} else {
/*
* If the def is encountered, the use was made and so was the
* the def node (see the code above). It was placed into the
* link field of the irn, so we can get it there.
*/
- b = get_irn_link(irn);
+ b = (border_t*)get_irn_link(irn);
- DEBUG_ONLY(assert(b && b->magic == BORDER_FOURCC && "Illegal border encountered"));
+ DEBUG_ONLY(assert(b && b->magic == BORDER_FOURCC && "Illegal border encountered");)
}
b->pressure = pressure;
#define border_use(irn, step, real) \
border_add(env, head, irn, step, ++pressure, 0, real)
- be_chordal_env_t *env = env_ptr;
+ be_chordal_env_t *env = (be_chordal_env_t*)env_ptr;
bitset_t *live = bitset_malloc(get_irg_last_idx(env->irg));
ir_node *irn;
- be_lv_t *lv = env->birg->lv;
+ be_lv_t *lv = be_get_irg_liveness(env->irg);
int i, n;
- unsigned elm;
+ size_t elm;
unsigned step = 0;
unsigned pressure = 0;
struct list_head *head;
{
be_insn_env_t ie;
- ie.ignore_colors = env->ignore_colors;
- ie.obst = env->obst;
- ie.cls = env->cls;
+ ie.allocatable_regs = env->allocatable_regs;
+ ie.obst = env->obst;
+ ie.cls = env->cls;
return be_scan_insn(&ie, irn);
}
* Make the Perm, recompute liveness and re-scan the insn since the
* in operands are now the Projs of the Perm.
*/
- perm = insert_Perm_after(env->birg, env->cls, sched_prev(insn->irn));
+ perm = insert_Perm_after(env->irg, env->cls, sched_prev(insn->irn));
/* Registers are propagated by insert_Perm_after(). Clean them here! */
if (perm == NULL)
return perm;
}
-BE_REGISTER_MODULE_CONSTRUCTOR(be_init_chordal_common);
+BE_REGISTER_MODULE_CONSTRUCTOR(be_init_chordal_common)
void be_init_chordal_common(void)
{
FIRM_DBG_REGISTER(dbg, "firm.be.chordal_common");