Eliminate invalid pointers in store buffer after marking.
authorhpayer <hpayer@chromium.org>
Mon, 9 Mar 2015 12:49:51 +0000 (05:49 -0700)
committerCommit bot <commit-bot@chromium.org>
Mon, 9 Mar 2015 12:49:58 +0000 (12:49 +0000)
commitaee169ec65014c651fab81881c12687e62934063
treeb24944d46a47d24e86e0cef3ceb01e2f79eecb5d
parenta9a362360441ab83227d4c84d3e147209999d56a
Eliminate invalid pointers in store buffer after marking.

The store buffer can contain stale store buffer entries, i.e., slot in dead objects pointing to new space objects. These slots are treaded as live slots which cause problems with non-pointer fields and makes concurrent sweeping complicated. Removing these pointers from the store buffer before it is used makes life easier.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27068}
src/heap/mark-compact.cc
src/heap/mark-compact.h
src/heap/store-buffer.cc
src/heap/store-buffer.h