void be_clear_links(ir_graph *irg)
{
- set_using_irn_link(irg);
+ ir_reserve_resources(irg, IR_RESOURCE_IRN_LINK);
irg_walk_graph(irg, firm_clear_link, NULL, NULL);
- clear_using_irn_link(irg);
+ ir_free_resources(irg, IR_RESOURCE_IRN_LINK);
}
void be_collect_phis(ir_graph *irg)
foreach_out_edge(irn, edge) {
proj = get_edge_src_irn(edge);
- if (get_Proj_proj(proj) == pn)
+ if (is_Proj(proj) && get_Proj_proj(proj) == pn)
return proj;
}