aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cgraph.h5
-rw-r--r--gcc/cgraphunit.c2
3 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d1872bf..9bb9b8c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2010-05-27 Jan Hubicka <jh@suse.cz>
+ * cgraph.h (struct cgraph_node): Mark former_clone_of by GTY ((skip)).
+ * cgraphunit.c (clone_of_p): Compile only when checking is enabled.
+
+2010-05-27 Jan Hubicka <jh@suse.cz>
+
* sched-ebb.c: Rename struct deps to struct deps_desc.
* ddg.c: Likewise.
* sel-sched-ir.c: Likewise.
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index 1080c44..8772ceb 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -227,8 +227,9 @@ struct GTY((chain_next ("%h.next"), chain_prev ("%h.previous"))) cgraph_node {
to the edge to speed up cgraph_edge function. */
htab_t GTY((param_is (struct cgraph_edge))) call_site_hash;
#ifdef ENABLE_CHECKING
- /* Declaration node used to be clone of. Used for checking only. */
- tree former_clone_of;
+ /* Declaration node used to be clone of. Used for checking only.
+ We must skip it or we get references from release checking GGC files. */
+ tree GTY ((skip)) former_clone_of;
#endif
PTR GTY ((skip)) aux;
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index f10d471..c778876 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -557,6 +557,7 @@ cgraph_mark_if_needed (tree decl)
cgraph_mark_needed_node (node);
}
+#ifdef ENABLE_CHECKING
/* Return TRUE if NODE2 is equivalent to NODE or its clone. */
static bool
clone_of_p (struct cgraph_node *node, struct cgraph_node *node2)
@@ -565,6 +566,7 @@ clone_of_p (struct cgraph_node *node, struct cgraph_node *node2)
node2 = node2->clone_of;
return node2 != NULL;
}
+#endif
/* Verify cgraph nodes of given cgraph node. */
void