aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTom de Vries <tjvries@xs4all.nl>2010-07-09 16:22:45 +0200
committerRichard Biener <rguenth@gcc.gnu.org>2010-07-09 14:22:45 +0000
commit5c9fae0d6eee586bce72f832e535d218ddd9bd5a (patch)
treedc568f3ff3ed2b9ea61636d3368e960b9293e879 /gcc
parent099379da2635c4d50d720bfae3ba66af8cd3d218 (diff)
downloadgcc-5c9fae0d6eee586bce72f832e535d218ddd9bd5a.zip
gcc-5c9fae0d6eee586bce72f832e535d218ddd9bd5a.tar.gz
gcc-5c9fae0d6eee586bce72f832e535d218ddd9bd5a.tar.bz2
tree.c (type_hash_if_marked_p): Removed non-ggc_marked_p clause.
2010-07-09 Tom de Vries <tjvries@xs4all.nl> * tree.c (type_hash_if_marked_p): Removed non-ggc_marked_p clause. * gcc.dg/debug/dwarf2/pr31230.c: New testcase. From-SVN: r161998
Diffstat (limited to 'gcc')
-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 6d64c97..7cad422 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 332664e..16123cf 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 0000000..ce26ec6
--- /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 2ddd1d8..cca171c 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