summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.dg/debug/dwarf2/pr31230.c19
-rw-r--r--gcc/tree.c6
4 files changed, 29 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6d64c97fbdb..7cad4222e7b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2010-07-09 Tom de Vries <tjvries@xs4all.nl>
+
+ * tree.c (type_hash_if_marked_p): Removed non-ggc_marked_p clause.
+
2010-07-09 Hariharan Sandanagobalane <hariharan@picochip.com>
* config/picochip/picochip.md (commsTestPort): Emit more
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 332664e2bd1..16123cf88e1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2010-07-09 Tom de Vries <tjvries@xs4all.nl>
+
+ * gcc.dg/debug/dwarf2/pr31230.c: New testcase.
+
2010-07-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44852
diff --git a/gcc/testsuite/gcc.dg/debug/dwarf2/pr31230.c b/gcc/testsuite/gcc.dg/debug/dwarf2/pr31230.c
new file mode 100644
index 00000000000..ce26ec639c3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/debug/dwarf2/pr31230.c
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+/* { dg-options "-gdwarf-2 -dA --param ggc-min-expand=0 --param ggc-min-heapsize=0" } */
+/* { dg-final { scan-assembler-times "DIE.*DW_TAG_array_type" 1 } } */
+/* { dg-final { scan-assembler-times "DIE.*DW_TAG_subrange_type" 1 } } */
+
+void f1 (void)
+{
+ char buffer1[100];
+}
+
+int f2 (void)
+{
+ return 0;
+}
+
+void f3 (void)
+{
+ char buffer2[100];
+}
diff --git a/gcc/tree.c b/gcc/tree.c
index 2ddd1d87fe4..cca171c8c3c 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -6072,16 +6072,14 @@ type_hash_canon (unsigned int hashcode, tree type)
/* See if the data pointed to by the type hash table is marked. We consider
it marked if the type is marked or if a debug type number or symbol
- table entry has been made for the type. This reduces the amount of
- debugging output and eliminates that dependency of the debug output on
- the number of garbage collections. */
+ table entry has been made for the type. */
static int
type_hash_marked_p (const void *p)
{
const_tree const type = ((const struct type_hash *) p)->type;
- return ggc_marked_p (type) || TYPE_SYMTAB_POINTER (type);
+ return ggc_marked_p (type);
}
static void