if (birg->lv != NULL)
return birg->lv;
- return birg->lv = be_liveness(birg);
+ return birg->lv = be_liveness(birg->irg);
}
void be_assure_dom_front(be_irg_t *birg)
}
/* Compute the inter block liveness for a graph. */
-be_lv_t *be_liveness(const be_irg_t *birg)
+be_lv_t *be_liveness(ir_graph *irg)
{
be_lv_t *lv = XMALLOCZ(be_lv_t);
- lv->irg = be_get_birg_irg(birg);
- lv->birg = birg;
+ lv->irg = irg;
#ifdef USE_LIVE_CHK
lv->dfs = dfs_new(&absgraph_irg_cfg_succ, lv->irg);
lv->lvc = lv_chk_new(lv->irg, lv->dfs);
void be_liveness_check(be_lv_t *lv)
{
lv_walker_t w;
- be_lv_t *fresh = be_liveness(lv->birg);
+ be_lv_t *fresh = be_liveness(lv->irg);
w.lv = lv;
w.data = fresh;
* Compute the inter block liveness for a graph.
* @param irg The graph.
*/
-be_lv_t *be_liveness(const struct be_irg_t *birg);
+be_lv_t *be_liveness(ir_graph *irg);
/**
* Check the given liveness information against a freshly computed one.
ir_phase ph;
ir_graph *irg;
dfs_t *dfs;
- const struct be_irg_t *birg;
bitset_t *nodes;
hook_entry_t hook_info;
#ifdef USE_LIVE_CHK
rss.h = heights_new(irg);
rss.nodes = plist_new();
rss.opts = &rss_options;
- rss.liveness = be_liveness(birg);
+ rss.liveness = be_liveness(irg);
be_liveness_assure_sets(rss.liveness);
irg_block_walk_graph(irg, NULL, process_block, &rss);
heights_free(rss.h);
env->curr_time = 0;
env->sched_info = NEW_ARR_F(trace_irn_t, nn);
- env->liveness = be_liveness(birg);
+ env->liveness = be_liveness(irg);
FIRM_DBG_REGISTER(env->dbg, "firm.be.sched.trace");
be_liveness_assure_chk(env->liveness);
if (birg->lv) {
be_liveness_free(birg->lv);
- birg->lv = be_liveness(birg);
+ birg->lv = be_liveness(irg);
}
}
ir_graph *irg) {
be_verify_register_pressure_env_t env;
- env.lv = be_liveness(birg);
+ env.lv = be_liveness(irg);
env.irg = irg;
env.cls = cls;
env.registers_available = env.cls->n_regs - be_put_ignore_regs(birg, env.cls, NULL);
int be_verify_register_allocation(const be_irg_t *birg) {
arch_env = be_get_birg_arch_env(birg);
irg = be_get_birg_irg(birg);
- lv = be_liveness(birg);
+ lv = be_liveness(irg);
problem_found = 0;
be_liveness_assure_sets(lv);