aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2011-06-01 15:07:26 +0200
committerMartin Jambor <jamborm@gcc.gnu.org>2011-06-01 15:07:26 +0200
commit11026b51231fe541fa4317b550177c004f724ad7 (patch)
treeb1b20c211d1c623de29cf8e93b6fb7a925880a12
parentb6156cf232517d1ee6c8192b74a090655712c8c3 (diff)
downloadgcc-11026b51231fe541fa4317b550177c004f724ad7.zip
gcc-11026b51231fe541fa4317b550177c004f724ad7.tar.gz
gcc-11026b51231fe541fa4317b550177c004f724ad7.tar.bz2
ipa-utils.c (ipa_dfs_info): New field scc_no.
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. From-SVN: r174524
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/ipa-utils.c1
-rw-r--r--gcc/ipa-utils.h3
3 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index add1fa2..f563c5f 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 f60ce2f..91fe839 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 7b49e6a..7e2190e 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;