timevar_pop (TV_INTEGRATION);
}
}
- /* We are not going to maintain the cgraph edges up to date.
- Kill it so it won't confuse us. */
- while (node->callees)
+ /* In non-unit-at-a-time we must mark all referenced functions as needed.
+ */
+ if (!flag_unit_at_a_time)
{
- /* In non-unit-at-a-time we must mark all referenced functions as needed.
- */
- if (node->callees->callee->analyzed && !flag_unit_at_a_time)
- cgraph_mark_needed_node (node->callees->callee);
- cgraph_remove_edge (node->callees);
+ struct cgraph_edge *e;
+ for (e = node->callees; e; e = e->next_callee)
+ if (e->callee->analyzed)
+ cgraph_mark_needed_node (e->callee);
}
/* We are not going to maintain the cgraph edges up to date.