diff options
author | Martin Jambor <mjambor@suse.cz> | 2011-03-28 14:15:44 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2011-03-28 14:15:44 +0200 |
commit | 322dd85963282f7b28ae25ccaafbf45ab2c9145d (patch) | |
tree | af67dd327ad63f08a6c47d5f6e9ec258c665e64e /gcc/tree-inline.c | |
parent | aa53e58b920d4fe4bbdb26e227401ad827c52a57 (diff) | |
download | gcc-322dd85963282f7b28ae25ccaafbf45ab2c9145d.tar.gz |
tree-inline.c (expand_call_inline): Do not check that destination node is analyzed.
2011-03-28 Martin Jambor <mjambor@suse.cz>
* tree-inline.c (expand_call_inline): Do not check that destination
node is analyzed.
(optimize_inline_calls): Assert that destination node is analyzed.
* cgraph.c (cgraph_add_new_function): Call cgraph_analyze_function, do
not call tree_lowering_passes.
* cgraph.h (cgraph_analyze_function): Declare.
* cgraphunit.c (cgraph_analyze_function): Make public.
From-SVN: r171602
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r-- | gcc/tree-inline.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index fd8edb4a2e6..8c8aef66294 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -3766,11 +3766,6 @@ expand_call_inline (basic_block bb, gimple stmt, copy_body_data *id) if (gimple_code (stmt) != GIMPLE_CALL) goto egress; - /* Objective C and fortran still calls tree_rest_of_compilation directly. - Kill this check once this is fixed. */ - if (!id->dst_node->analyzed) - goto egress; - cg_edge = cgraph_edge (id->dst_node, stmt); gcc_checking_assert (cg_edge); /* First, see if we can figure out what function is being called. @@ -4203,6 +4198,7 @@ optimize_inline_calls (tree fn) memset (&id, 0, sizeof (id)); id.src_node = id.dst_node = cgraph_node (fn); + gcc_assert (id.dst_node->analyzed); id.dst_fn = fn; /* Or any functions that aren't finished yet. */ if (current_function_decl) |