OSDN Git Service

2010-03-18 Martin Jambor <mjambor@suse.cz>
authorjamborm <jamborm@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 18 Mar 2010 20:07:13 +0000 (20:07 +0000)
committerjamborm <jamborm@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 18 Mar 2010 20:07:13 +0000 (20:07 +0000)
commitc596d83002a937c3943de34c6f47da047337f865
treeb3c65fe0aa2410f77c557a506bd3f0cf02737f6e
parentdd5c72c237b288e15352aa0720416778e38e3962
2010-03-18  Martin Jambor  <mjambor@suse.cz>

PR middle-end/42450
* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
all non-clones.  Moved call redirection...
(cgraph_redirect_edge_call_stmt_to_callee): ...to this new
function.
(cgraph_materialize_all_clones): Dispose of all
combined_args_to_skip bitmaps.
(verify_cgraph_node): Do not check for edges pointing to wrong
nodes in inline clones.
* tree-inline.c (copy_bb): Call
cgraph_redirect_edge_call_stmt_to_callee.
* ipa.c (cgraph_remove_unreachable_nodes): Call
cgraph_node_remove_callees even when there are used clones.

* testsuite/g++.dg/torture/pr42450.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157546 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/cgraph.h
gcc/cgraphunit.c
gcc/ipa.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/torture/pr42450.C [new file with mode: 0644]
gcc/tree-inline.c