From 2d517b2f844df7960f4b55edb4fb55139e797442 Mon Sep 17 00:00:00 2001 From: mmitchel Date: Wed, 27 Oct 1999 06:12:31 +0000 Subject: [PATCH] * ggc-page.c (poison_pages): Don't be overzealous. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30209 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 4 ++++ gcc/ggc-page.c | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b67a02487d0..cf97fbf3cfb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Tue Oct 26 23:15:03 1999 Mark Mitchell + + * ggc-page.c (poison_pages): Don't be overzealous. + Tue Oct 26 23:29:18 1999 Jeffrey A Law (law@cygnus.com) * c-typeck.c (build_function_call): Check that the built-in diff --git a/gcc/ggc-page.c b/gcc/ggc-page.c index 54f762f9533..f034a4fb47f 100644 --- a/gcc/ggc-page.c +++ b/gcc/ggc-page.c @@ -1021,6 +1021,14 @@ poison_pages () for (p = G.pages[order]; p != NULL; p = p->next) { size_t i; + + if (p->context_depth != G.context_depth) + /* Since we don't do any collection for pages in pushed + contexts, there's no need to do any poisoning. And + besides, the IN_USE_P array isn't valid until we pop + contexts. */ + continue; + for (i = 0; i < num_objects; i++) { size_t word, bit; -- 2.11.4.GIT