return req->cls->n_regs;
}
-void arch_put_non_ignore_regs(const arch_env_t *env,
- const arch_register_class_t *cls, bitset_t *bs)
+void arch_put_non_ignore_regs(const arch_register_class_t *cls, bitset_t *bs)
{
unsigned i;
- (void) env;
for(i = 0; i < cls->n_regs; ++i) {
if(!arch_register_type_is(&cls->regs[i], ignore))
/**
* Put all registers which shall not be ignored by the register
* allocator in a bit set.
- * @param env The arch env.
* @param cls The register class to consider.
* @param bs The bit set to put the registers to.
*/
-extern void arch_put_non_ignore_regs(const arch_env_t *env, const arch_register_class_t *cls, bitset_t *bs);
+extern void arch_put_non_ignore_regs(const arch_register_class_t *cls, bitset_t *bs);
/**
* Check, if a register is assignable to an operand of a node.
pmap_insert(partners, proj, NULL);
bitset_clear_all(bs);
- arch_put_non_ignore_regs(aenv, env->cls, bs);
+ arch_put_non_ignore_regs(env->cls, bs);
bitset_andnot(bs, env->ignore_colors);
bitset_foreach(bs, col) {
//hungarian_add(bp, n_alloc, col, 1);
my.normal_colors = bitset_alloca(arch_register_class_n_regs(co->cls));
bitset_clear_all(my.normal_colors);
- arch_put_non_ignore_regs(co->aenv, co->cls, my.normal_colors);
+ arch_put_non_ignore_regs(co->cls, my.normal_colors);
my.n_colors = bitset_popcnt(my.normal_colors);
ienv = new_ilp_env(co, ilp2_build, ilp2_apply, &my);
if (type & arch_register_req_type_limited) {
rbitset_copy_to_bitset(req->limited, op->regs);
} else {
- arch_put_non_ignore_regs(arch_env, env->cls, op->regs);
+ arch_put_non_ignore_regs(env->cls, op->regs);
if (env->ignore_colors)
bitset_andnot(op->regs, env->ignore_colors);
}
bitset_clear_all(bs);
assert(bitset_size(bs) == (unsigned)cls->n_regs);
- arch_put_non_ignore_regs(birg->main_env->arch_env, cls, bs);
+ arch_put_non_ignore_regs(cls, bs);
bitset_flip_all(bs);
be_abi_put_ignore_regs(birg->abi, cls, bs);
pset *ser_set = new_pset(cmp_rss_edges, 20);
/* available_regs = R = |arch_non_ignore_regs cut ~abi_ignore_regs| */
- arch_put_non_ignore_regs(rss->arch_env, rss->cls, arch_nonign_bs);
+ arch_put_non_ignore_regs(rss->cls, arch_nonign_bs);
be_abi_put_ignore_regs(rss->abi, rss->cls, abi_ign_bs);
bitset_andnot(arch_nonign_bs, abi_ign_bs);
available_regs = bitset_popcnt(arch_nonign_bs);