Index: gc_gen/src/common/space_tuner.cpp =================================================================== --- gc_gen/src/common/space_tuner.cpp (revision 541695) +++ gc_gen/src/common/space_tuner.cpp (working copy) @@ -173,10 +173,10 @@ non_los_live_obj_size += collector->non_los_live_obj_size; los_live_obj_size += collector->los_live_obj_size; } + + POINTER_SIZE_INT additional_non_los_size = max((collector_num << 2) << GC_BLOCK_SHIFT_COUNT, non_los_live_obj_size >> 5); + non_los_live_obj_size = round_up_to_size(non_los_live_obj_size + additional_non_los_size, GC_BLOCK_SIZE_BYTES); - non_los_live_obj_size += ((collector_num << 2) << GC_BLOCK_SHIFT_COUNT); - non_los_live_obj_size = round_up_to_size(non_los_live_obj_size, GC_BLOCK_SIZE_BYTES); - los_live_obj_size += ((collector_num << 2) << GC_BLOCK_SHIFT_COUNT); los_live_obj_size = round_up_to_size(los_live_obj_size, GC_BLOCK_SIZE_BYTES);