diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ipa-utils.c | 1 | ||||
-rw-r--r-- | gcc/ipa-utils.h | 3 |
3 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index add1fa26654..f563c5ffda0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2011-06-01 Martin Jambor <mjambor@suse.cz> + * ipa-utils.c (ipa_dfs_info): New field scc_no. + * ipa-utils.c (searchc): Set scc_no. + +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. diff --git a/gcc/ipa-utils.c b/gcc/ipa-utils.c index f60ce2fd074..91fe839577d 100644 --- a/gcc/ipa-utils.c +++ b/gcc/ipa-utils.c @@ -138,6 +138,7 @@ searchc (struct searchc_env* env, struct cgraph_node *v, x = env->stack[--(env->stack_size)]; x_info = (struct ipa_dfs_info *) x->aux; x_info->on_stack = false; + x_info->scc_no = v_info->dfn_number; if (env->reduce) { diff --git a/gcc/ipa-utils.h b/gcc/ipa-utils.h index 7b49e6a1c94..7e2190eaee5 100644 --- a/gcc/ipa-utils.h +++ b/gcc/ipa-utils.h @@ -26,6 +26,9 @@ along with GCC; see the file COPYING3. If not see struct ipa_dfs_info { int dfn_number; int low_link; + /* This field will have the samy value for any two nodes in the same strongly + connected component. */ + int scc_no; bool new_node; bool on_stack; struct cgraph_node* next_cycle; |