Simplify and compact transitions storage
authorjkummerow <jkummerow@chromium.org>
Thu, 5 Mar 2015 20:09:26 +0000 (12:09 -0800)
committerCommit bot <commit-bot@chromium.org>
Thu, 5 Mar 2015 20:09:41 +0000 (20:09 +0000)
commit45fbef7f2252fce10634931cb103ccc1fc95ae6a
treef0bb23c2ed21013a3ef2e80f108724b6cc6fb7c9
parentb9ed2199bdff292bfdf49fb3d05eb3564ece27bd
Simplify and compact transitions storage

Simple transitions are now stored in a map's "transitions" field (as a WeakCell wrapping the target map); full TransitionArrays are used when that's not sufficient.
To encapsulate these storage format implementation details, functions for manipulating and querying transitions have been refactored to be static functions on the TransitionArray class, and take maps as inputs.

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

Cr-Commit-Position: refs/heads/master@{#27029}
18 files changed:
src/heap-snapshot-generator.cc
src/heap/heap.cc
src/heap/mark-compact.cc
src/heap/mark-compact.h
src/heap/objects-visiting-inl.h
src/hydrogen.h
src/json-parser.h
src/objects-debug.cc
src/objects-inl.h
src/objects-printer.cc
src/objects.cc
src/objects.h
src/transitions-inl.h
src/transitions.cc
src/transitions.h
test/cctest/test-heap.cc
test/cctest/test-migrations.cc
test/cctest/test-transitions.cc