diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2011-07-26 15:36:22 +0400 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2011-07-26 15:36:22 +0400 |
commit | 29be14a4aa2f73bf89396e50e5f5322fa9264b00 (patch) | |
tree | 85fb9a7aa0e14ef35f73be40b00e0aedcb37cf96 /blacklst.c | |
parent | e955362cfcef47fdc3ad2140f50ea4638fd86a4d (diff) | |
download | bdwgc-29be14a4aa2f73bf89396e50e5f5322fa9264b00.tar.gz |
gc5.3 tarball importgc5_3
Diffstat (limited to 'blacklst.c')
-rw-r--r-- | blacklst.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -145,6 +145,13 @@ void GC_promote_black_lists() if (GC_black_list_spacing < 3 * HBLKSIZE) { GC_black_list_spacing = 3 * HBLKSIZE; } + if (GC_black_list_spacing > MAXHINCR * HBLKSIZE) { + GC_black_list_spacing = MAXHINCR * HBLKSIZE; + /* Makes it easier to allocate really huge blocks, which otherwise */ + /* may have problems with nonuniform blacklist distributions. */ + /* This way we should always succeed immediately after growing the */ + /* heap. */ + } } void GC_unpromote_black_lists() |