Oilpan: Immediatelly promptly free objects.

This CL brings the following changes to promptly freeing and coalescing:
1) Promptly freed objects on already swept pages are immediately added to the free list.
2) For promptly freed objects on not already swept pages we only clear the mark bit.
3) The promptly_freed_size_ counter is explicitly set to 0 before sweeping because sweeping will take care of coalescing as well.
4) The dead bit is removed.
Note that coalescing before sweeping completed can not happen.

Future outlook: As a next step we will evaluate if we need coalescing and if we need it we have to make it jank friendly.

Bug: chromium:804279, chromium:633030
Change-Id: I35dfae80ae0e7ed6cfbc91877d97d0b5fc26498e
Reviewed-on: https://chromium-review.googlesource.com/873974
Commit-Queue: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532509}
2 files changed