- pmap_destroy(env->regs);
- env->regs = NULL;
-}
-
-void be_abi_free(ir_graph *irg)
-{
- be_abi_irg_t *env = be_get_irg_abi(irg);
-
- if (env->call != NULL)
- be_abi_call_free(env->call);
- assert(env->regs == NULL);
- free(env);
-
- be_set_irg_abi(irg, NULL);
-}
-
-void be_put_allocatable_regs(const ir_graph *irg,
- const arch_register_class_t *cls, bitset_t *bs)
-{
- be_irg_t *birg = be_birg_from_irg(irg);
- unsigned *allocatable_regs = birg->allocatable_regs;
- unsigned i;
-
- assert(bitset_size(bs) == cls->n_regs);
- bitset_clear_all(bs);
- for (i = 0; i < cls->n_regs; ++i) {
- const arch_register_t *reg = &cls->regs[i];
- if (rbitset_is_set(allocatable_regs, reg->global_index))
- bitset_set(bs, i);
- }