diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-10-27 06:12:31 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-10-27 06:12:31 +0000 |
commit | c831fdea4be7d36270bfd160bd818250e5f4f7d6 (patch) | |
tree | 759d2fa33ebcc159d29c23cab43d30b53789711f /gcc | |
parent | 95815af9d258082b7548e23fc2595ff637a48e1a (diff) | |
download | gcc-c831fdea4be7d36270bfd160bd818250e5f4f7d6.zip gcc-c831fdea4be7d36270bfd160bd818250e5f4f7d6.tar.gz gcc-c831fdea4be7d36270bfd160bd818250e5f4f7d6.tar.bz2 |
* ggc-page.c (poison_pages): Don't be overzealous.
From-SVN: r30209
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/ggc-page.c | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b67a024..cf97fbf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Tue Oct 26 23:15:03 1999 Mark Mitchell <mark@codesourcery.com> + + * 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 54f762f..f034a4f 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; |