diff options
author | Martin Jambor <mjambor@suse.cz> | 2009-03-30 15:06:52 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2009-03-30 15:06:52 +0200 |
commit | 133f9369c382006e841e9b940e060cbb4911edcf (patch) | |
tree | a998017d535126ebe28c42696a5e141a4c23b459 /gcc/cgraphbuild.c | |
parent | 77a08224eed85b4dc2baa566531ee21c8773302a (diff) | |
download | gcc-133f9369c382006e841e9b940e060cbb4911edcf.zip gcc-133f9369c382006e841e9b940e060cbb4911edcf.tar.gz gcc-133f9369c382006e841e9b940e060cbb4911edcf.tar.bz2 |
ipa-prop.h (jump_func_type): Rename IPA_UNKNOWN...
2009-03-30 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (jump_func_type): Rename IPA_UNKNOWN, IPA_CONST,
IPA_CONST_MEMBER_PTR, and IPA_PASS_THROUGH to IPA_JF_UNKNOWN,
IPA_JF_CONST, IPA_JF_CONST_MEMBER_PTR, and IPA_JF_PASS_THROUGH
respectively.
* tree-dfa.c (get_ref_base_and_extent): Return -1 maxsize if
seen_variable_array_ref while also traversing a union.
* tree-inline.c (optimize_inline_calls): Do not call
cgraph_node_remove_callees.
* cgraphbuild.c (remove_cgraph_callee_edges): New function.
(pass_remove_cgraph_callee_edges): New variable.
* passes.c (init_optimization_passes): Add
pass_remove_cgraph_callee_edges after early inlining and before all
late intraprocedural passes.
* omp-low.c (expand_omp_taskreg): Always set current_function_decl.
From-SVN: r145291
Diffstat (limited to 'gcc/cgraphbuild.c')
-rw-r--r-- | gcc/cgraphbuild.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gcc/cgraphbuild.c b/gcc/cgraphbuild.c index 3868712..c7d6aa7 100644 --- a/gcc/cgraphbuild.c +++ b/gcc/cgraphbuild.c @@ -251,3 +251,30 @@ struct gimple_opt_pass pass_rebuild_cgraph_edges = 0, /* todo_flags_finish */ } }; + + +static unsigned int +remove_cgraph_callee_edges (void) +{ + cgraph_node_remove_callees (cgraph_node (current_function_decl)); + return 0; +} + +struct gimple_opt_pass pass_remove_cgraph_callee_edges = +{ + { + GIMPLE_PASS, + NULL, /* name */ + NULL, /* gate */ + remove_cgraph_callee_edges, /* execute */ + NULL, /* sub */ + NULL, /* next */ + 0, /* static_pass_number */ + 0, /* tv_id */ + 0, /* properties_required */ + 0, /* properties_provided */ + 0, /* properties_destroyed */ + 0, /* todo_flags_start */ + 0, /* todo_flags_finish */ + } +}; |