*/
static void lower_copyb_nodes(ir_node *irn, unsigned mode_bytes)
{
- ir_graph *irg = current_ir_graph;
+ ir_graph *irg = get_irn_irg(irn);
unsigned size;
unsigned offset;
ir_mode *mode;
mode_bytes /= 2;
}
- turn_into_tuple(irn, pn_CopyB_max);
+ turn_into_tuple(irn, pn_CopyB_max+1);
set_Tuple_pred(irn, pn_CopyB_M, mem);
- set_Tuple_pred(irn, pn_CopyB_X_regular, get_irg_bad(irg));
- set_Tuple_pred(irn, pn_CopyB_X_except, get_irg_bad(irg));
+ set_Tuple_pred(irn, pn_CopyB_X_regular, new_r_Bad(irg, mode_X));
+ set_Tuple_pred(irn, pn_CopyB_X_except, new_r_Bad(irg, mode_X));
}
/**
void lower_CopyB(ir_graph *irg, unsigned max_size, unsigned native_mode_bytes)
{
walk_env_t env;
- entry_t *entry;
- ir_graph *rem = current_ir_graph;
-
- current_ir_graph = irg;
+ entry_t *entry;
obstack_init(&env.obst);
env.max_size = max_size;
}
obstack_free(&env.obst, NULL);
- current_ir_graph = rem;
}