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 = ((collector_num * 2) << GC_BLOCK_SHIFT_COUNT) + (non_los_live_obj_size >> GC_BLOCK_SHIFT_COUNT) * (GC_OBJ_SIZE_THRESHOLD/4); + 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);