diff options
author | Bryce McKinlay <mckinlay@redhat.com> | 2006-01-25 03:03:14 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2006-01-25 03:03:14 +0000 |
commit | 54f28c21ee515da92119551983d51118a3666e85 (patch) | |
tree | 575ef0143266ff2f57b09fe0143e9a412b1fb27f /boehm-gc/misc.c | |
parent | ac42ec79e00a729e9d92fc1d254862936ee68bbe (diff) | |
download | gcc-54f28c21ee515da92119551983d51118a3666e85.zip gcc-54f28c21ee515da92119551983d51118a3666e85.tar.gz gcc-54f28c21ee515da92119551983d51118a3666e85.tar.bz2 |
Import Boehm GC version 6.6.
From-SVN: r110204
Diffstat (limited to 'boehm-gc/misc.c')
-rw-r--r-- | boehm-gc/misc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/boehm-gc/misc.c b/boehm-gc/misc.c index 2b69a00..89f05ba 100644 --- a/boehm-gc/misc.c +++ b/boehm-gc/misc.c @@ -246,7 +246,7 @@ void *arg2; byte_sz = WORDS_TO_BYTES(word_sz); if (GC_all_interior_pointers) { /* We need one extra byte; don't fill in GC_size_map[byte_sz] */ - byte_sz--; + byte_sz -= EXTRA_BYTES; } for (j = low_limit; j <= byte_sz; j++) GC_size_map[j] = word_sz; @@ -805,7 +805,10 @@ void GC_init_inner() void GC_enable_incremental GC_PROTO(()) { -# if !defined(SMALL_CONFIG) +# if !defined(SMALL_CONFIG) && !defined(KEEP_BACK_PTRS) + /* If we are keeping back pointers, the GC itself dirties all */ + /* pages on which objects have been marked, making */ + /* incremental GC pointless. */ if (!GC_find_leak) { DCL_LOCK_STATE; |