heap: make array buffer maps disjoint
authorfedor <fedor@indutny.com>
Wed, 2 Sep 2015 10:04:56 +0000 (03:04 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 2 Sep 2015 10:05:13 +0000 (10:05 +0000)
commit15a0ace533f5810bf87382decbbaf4799f6cac8e
tree434dc95f5eda43762562e11e0db01d101942ec4a
parent85f6e1684447a728b51e8b7a56746e5bad781d4a
heap: make array buffer maps disjoint

Remove intersection from the `std::map`s representing current live
ArrayBuffers. While being simpler to understand, it poses significant
performance issue for the active ArrayBuffer users (like node.js).

Store buffers separately, and process them together during mark-sweep
phase.

BUG=
R=mlippautz@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#30539}
src/heap/heap.cc
src/heap/heap.h
src/heap/mark-compact.cc
src/heap/objects-visiting-inl.h