mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-15 13:41:13 +08:00
ipa-utils.c (searchc_env): New field allow_overwritable.
2011-06-01 Martin Jambor <mjambor@suse.cz> * ipa-utils.c (searchc_env): New field allow_overwritable. (searchc): do not ignore edges to overwritable nodes if indicated by env->allow_overwritable. (ipa_reduced_postorder): Set env.allow_overwritable. From-SVN: r174523
This commit is contained in:
parent
6c059f76e7
commit
b6156cf232
@ -1,3 +1,10 @@
|
||||
2011-06-01 Martin Jambor <mjambor@suse.cz>
|
||||
|
||||
* ipa-utils.c (searchc_env): New field allow_overwritable.
|
||||
(searchc): do not ignore edges to overwritable nodes if indicated
|
||||
by env->allow_overwritable.
|
||||
(ipa_reduced_postorder): Set env.allow_overwritable.
|
||||
|
||||
2011-06-01 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
* tree.c (free_lang_data): Do not reset boolean_type_node nor
|
||||
|
@ -67,6 +67,7 @@ struct searchc_env {
|
||||
int order_pos;
|
||||
splay_tree nodes_marked_new;
|
||||
bool reduce;
|
||||
bool allow_overwritable;
|
||||
int count;
|
||||
};
|
||||
|
||||
@ -101,11 +102,14 @@ searchc (struct searchc_env* env, struct cgraph_node *v,
|
||||
{
|
||||
struct ipa_dfs_info * w_info;
|
||||
struct cgraph_node *w = edge->callee;
|
||||
enum availability avail = cgraph_function_body_availability (w);
|
||||
|
||||
if (ignore_edge && ignore_edge (edge))
|
||||
continue;
|
||||
|
||||
if (w->aux && cgraph_function_body_availability (edge->callee) > AVAIL_OVERWRITABLE)
|
||||
if (w->aux
|
||||
&& (avail > AVAIL_OVERWRITABLE
|
||||
|| (env->allow_overwritable && avail == AVAIL_OVERWRITABLE)))
|
||||
{
|
||||
w_info = (struct ipa_dfs_info *) w->aux;
|
||||
if (w_info->new_node)
|
||||
@ -171,6 +175,7 @@ ipa_reduced_postorder (struct cgraph_node **order,
|
||||
env.nodes_marked_new = splay_tree_new (splay_tree_compare_ints, 0, 0);
|
||||
env.count = 1;
|
||||
env.reduce = reduce;
|
||||
env.allow_overwritable = allow_overwritable;
|
||||
|
||||
for (node = cgraph_nodes; node; node = node->next)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user