Reviewers: Toon Verwaest,
Message:
Toon, PTAL.
Ulan: FYI.
Sorry that the patch is so large; I don't see a good way to split it up.
At least there are two points of comfort:
(1) The biggest part of the modified line count is caused by moving code
around
(out of objects.h/cc into transitions.h/cc; some reshuffling within
transitions.h).
(2) There's no intended change in observable semantics (i.e. which
transitions
are stored, cleared, and retrieved at which time).
There is some potential for further trimming down the public API of
TransitionArray, if the interface to the garbage collector is redesigned.
I'm
not sure that's worth it; either way I'm leaving it for future CLs.
Description:
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.
Please review this at https://codereview.chromium.org/980573002/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+956, -987 lines):
M src/heap-snapshot-generator.cc
M src/heap/heap.cc
M src/heap/mark-compact.h
M src/heap/mark-compact.cc
M src/heap/objects-visiting-inl.h
M src/hydrogen.h
M src/json-parser.h
M src/objects.h
M src/objects.cc
M src/objects-debug.cc
M src/objects-inl.h
M src/objects-printer.cc
M src/transitions.h
M src/transitions.cc
M src/transitions-inl.h
M test/cctest/test-heap.cc
M test/cctest/test-migrations.cc
M test/cctest/test-transitions.cc
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.