int co_is_optimizable_root(const copy_opt_t *co, ir_node *irn) {
const arch_register_req_t *req;
const arch_register_t *reg;
+ (void)co; // TODO remove parameter
- if (arch_irn_is(co->aenv, irn, ignore))
+ if (arch_irn_is(irn, ignore))
return 0;
reg = arch_get_irn_register(irn);
/* Else insert the argument of the phi to the members of this ou */
DBG((dbg, LEVEL_1, "\t Member: %+F\n", arg));
- if (! arch_irn_is(co->aenv, arg, ignore)) {
+ if (!arch_irn_is(arg, ignore)) {
/* Check if arg has occurred at a prior position in the arg/list */
arg_pos = 0;
for (o=1; o<unit->node_count; ++o) {
for (i = 0; (1U << i) <= other; ++i) {
if (other & (1U << i)) {
ir_node *o = get_irn_n(skip_Proj(irn), i);
- if (!arch_irn_is(co->aenv, o, ignore) &&
+ if (!arch_irn_is(o, ignore) &&
!nodes_interfere(co->cenv, irn, o)) {
++count;
}
for (i = 0; 1U << i <= other; ++i) {
if (other & (1U << i)) {
ir_node *o = get_irn_n(skip_Proj(irn), i);
- if (!arch_irn_is(co->aenv, o, ignore) &&
+ if (!arch_irn_is(o, ignore) &&
!nodes_interfere(co->cenv, irn, o)) {
unit->nodes[k] = o;
unit->costs[k] = co->get_costs(co, irn, o, -1);
int pos, max;
const arch_register_t *reg;
- if (!is_curr_reg_class(co, irn) || arch_irn_is(co->aenv, irn, ignore))
+ if (!is_curr_reg_class(co, irn) || arch_irn_is(irn, ignore))
return;
reg = arch_get_irn_register(irn);
for (i = 0; 1U << i <= other; ++i) {
if (other & (1U << i)) {
ir_node *other = get_irn_n(skip_Proj(irn), i);
- if (! arch_irn_is(co->aenv, other, ignore))
+ if (!arch_irn_is(other, ignore))
add_edges(co, irn, other, co->get_costs(co, irn, other, 0));
}
}
n = n_regs;
be_ifg_foreach_node(ifg, it, irn) {
- if(!arch_irn_is(co->aenv, irn, ignore))
+ if (!arch_irn_is(irn, ignore))
node_map[get_irn_idx(irn)] = n++;
}
fprintf(f, "%d %d\n", n, n_regs);
be_ifg_foreach_node(ifg, it, irn) {
- if(!arch_irn_is(co->aenv, irn, ignore)) {
+ if (!arch_irn_is(irn, ignore)) {
int idx = node_map[get_irn_idx(irn)];
affinity_node_t *a = get_affinity_info(co, irn);
}
be_ifg_foreach_neighbour(ifg, nit, irn, adj) {
- if(!arch_irn_is(co->aenv, adj, ignore) && !co_dump_appel_disjoint_constraints(co, irn, adj)) {
+ if (!arch_irn_is(adj, ignore) &&
+ !co_dump_appel_disjoint_constraints(co, irn, adj)) {
int adj_idx = node_map[get_irn_idx(adj)];
if(idx < adj_idx)
fprintf(f, "%d %d -1\n", idx, adj_idx);
neighb_t *n;
co_gs_foreach_neighb(a, n) {
- if(!arch_irn_is(co->aenv, n->irn, ignore)) {
+ if (!arch_irn_is(n->irn, ignore)) {
int n_idx = node_map[get_irn_idx(n->irn)];
if(idx < n_idx)
fprintf(f, "%d %d %d\n", idx, n_idx, (int) n->costs);
static int ifg_is_dump_node(void *self, ir_node *irn)
{
- co_ifg_dump_t *cod = self;
- return !arch_irn_is(cod->co->aenv, irn, ignore);
+ (void)self;
+ return !arch_irn_is(irn, ignore);
}
static void ifg_dump_node_attr(FILE *f, void *self, ir_node *irn)