Reviewers: Michael Starzinger,

Description:
Fix Heap::Shrink to ensure that it does not free pages that are still in use.

Heap::Shrink is called from EnsureFromSpaceIsCommitted at the very start of the GC. At this moment live bytes counts on pages are in inconsistent states. Some
pages might have been already swept but have not been yet reached by an
incremental marker (or incremental marker is not in progress) and have live
bytes count set to 0. Thus we can't rely only on LiveBytes to determine which
pages can be released to the OS.


[email protected]
BUG=100414


Please review this at http://codereview.chromium.org/8507038/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/heap.cc
  M src/spaces.h
  M src/spaces.cc


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to