Avoid excessive GCs in small heaps.
Avoid excessive GCs in small heaps.

Small heaps and small heap growing factor can lead to excessive GCs in corner cases.

Consider function F(old_gen_size, factor) that returns the number of bytes that
have to be allocated in the old generation to start incremental marking.

F(4MB, 1.1) = 4MB (because of kMinimumOldGenerationAllocationLimit)
F(6MB, 1.1) = 2MB (because of kMinimumOldGenerationAllocationLimit)
F(8MB, 1.1) = 800KB

Funtion F should be monotonic in old_gen_size, but it currently has a minimum
at kMinimumOldGenerationAllocationLimit.

This CL makes F monotonic.

BUG=

Review URL: https://codereview.chromium.org/1144223002

Cr-Commit-Position: 972c6d2dc6dd5efdad1377c0d224e03eb8f276f7@{#28549}

UniversalFuture/moosh,UniversalFuture/moosh,UniversalFuture/moosh,UniversalFuture/moosh