Commit d21bede3 by Jan Hubicka Committed by Jan Hubicka

re PR middle-end/17126 (ICE with -fno-unit-at-a-time and -O3)

	PR middle-end/17126
	* tree-optimize.c (update_inlined_to_pointers): Fix the recursion.
	(tree_rest_of_compilation): Cleanup.

From-SVN: r87780
parent 37337e55
2004-09-21 Jan Hubicka <jh@suse.cz>
PR middle-end/17126
* tree-optimize.c (update_inlined_to_pointers): Fix the recursion.
(tree_rest_of_compilation): Cleanup.
2004-09-20 Ulrich Weigand <uweigand@de.ibm.com> 2004-09-20 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/s390.c (s390_select_rtx_section): Remove. * config/s390/s390.c (s390_select_rtx_section): Remove.
......
...@@ -553,7 +553,7 @@ update_inlined_to_pointers (struct cgraph_node *node, ...@@ -553,7 +553,7 @@ update_inlined_to_pointers (struct cgraph_node *node,
if (e->callee->global.inlined_to) if (e->callee->global.inlined_to)
{ {
e->callee->global.inlined_to = inlined_to; e->callee->global.inlined_to = inlined_to;
update_inlined_to_pointers (e->callee, node); update_inlined_to_pointers (e->callee, inlined_to);
} }
} }
} }
...@@ -653,15 +653,9 @@ tree_rest_of_compilation (tree fndecl, bool nested_p) ...@@ -653,15 +653,9 @@ tree_rest_of_compilation (tree fndecl, bool nested_p)
cgraph_remove_edge (node->callees); cgraph_remove_edge (node->callees);
node->callees = saved_node->callees; node->callees = saved_node->callees;
saved_node->callees = NULL; saved_node->callees = NULL;
update_inlined_to_pointers (node, node);
for (e = node->callees; e; e = e->next_callee) for (e = node->callees; e; e = e->next_callee)
{ e->caller = node;
if (e->callee->global.inlined_to)
{
e->callee->global.inlined_to = node;
update_inlined_to_pointers (e->callee, node);
}
e->caller = node;
}
cgraph_remove_node (saved_node); cgraph_remove_node (saved_node);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment