static
void spill_phi(minibelady_env_t *env, ir_node *phi)
{
- ir_graph *irg = get_irn_irg(phi);
- ir_node *block = get_nodes_block(phi);
- int i, arity = get_irn_arity(phi);
- ir_node **in = alloca(arity * sizeof(in[0]));
- ir_node *spill_to_kill = NULL;
+ ir_graph *irg = get_irn_irg(phi);
+ ir_node *block = get_nodes_block(phi);
+ int arity = get_irn_arity(phi);
+ ir_node **in = ALLOCAN(ir_node*, arity);
+ ir_node *spill_to_kill = NULL;
spill_info_t *spill_info;
+ int i;
/* does a spill exist for the phis value? */
spill_info = get_spill_info(env, phi);
len = ARR_LEN(phis);
for(i = 0; i < len; ++i) {
ir_node *phi = phis[i];
- be_set_phi_flags(phi, arch_irn_flags_ignore);
arch_set_irn_register(phi, env.reg);
}
be_ssa_construction_destroy(&senv);