• Jakob Gruber's avatar
    Reland "[snapshot] Expose the serializer through %SerializeDeserializeNow" · bce121c7
    Jakob Gruber authored
    This is a reland of ad5b005e
    
    Original change's description:
    > [snapshot] Expose the serializer through %SerializeDeserializeNow
    >
    > ... in order to exercise the snapshot/ component from mjsunit tests
    > and fuzzers.
    >
    > * Since the serializer and deserializer can now be called at any time
    > instead of only in a tightly controlled environment, several
    > assumptions (such as an empty execution stack, no microtasks, no
    > handles) no longer hold and had to be made configurable through
    > SerializerFlags.
    >
    > * Root iteration now skips more root categories which were previously
    > guaranteed to be empty (e.g. the stack, microtask queue, handles).
    >
    > * The %SerializeDeserializeNow runtime function triggers
    > serialization, deserialization, and heap verification on the current
    > isolate and native context.
    >
    > Support is not yet complete and will be extended in future work. Once
    > all mjsunit tests successfully run, we can add a new test mode to
    > stress serialization.
    >
    > Bug: v8:10416
    > Change-Id: Ie7ff441a761257dd7f256d0a33e73227850074ac
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2159495
    > Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
    > Reviewed-by: Dan Elphick <delphick@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#67423}
    
    Tbr: delphick@chromium.org,ulan@chromium.org
    Bug: v8:10416
    Change-Id: Ibed04c0f0b72fabcf811d8b18a1479391a11568b
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2170090Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
    Reviewed-by: 's avatarDan Elphick <delphick@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#67426}
    bce121c7
Name
Last commit
Last update
..
embedded Loading commit data...
DEPS Loading commit data...
OWNERS Loading commit data...
code-serializer.cc Loading commit data...
code-serializer.h Loading commit data...
context-deserializer.cc Loading commit data...
context-deserializer.h Loading commit data...
context-serializer.cc Loading commit data...
context-serializer.h Loading commit data...
deserializer-allocator.cc Loading commit data...
deserializer-allocator.h Loading commit data...
deserializer.cc Loading commit data...
deserializer.h Loading commit data...
mksnapshot.cc Loading commit data...
object-deserializer.cc Loading commit data...
object-deserializer.h Loading commit data...
read-only-deserializer.cc Loading commit data...
read-only-deserializer.h Loading commit data...
read-only-serializer.cc Loading commit data...
read-only-serializer.h Loading commit data...
references.h Loading commit data...
roots-serializer.cc Loading commit data...
roots-serializer.h Loading commit data...
serializer-allocator.cc Loading commit data...
serializer-allocator.h Loading commit data...
serializer-deserializer.cc Loading commit data...
serializer-deserializer.h Loading commit data...
serializer.cc Loading commit data...
serializer.h Loading commit data...
snapshot-compression.cc Loading commit data...
snapshot-compression.h Loading commit data...
snapshot-data.cc Loading commit data...
snapshot-data.h Loading commit data...
snapshot-empty.cc Loading commit data...
snapshot-external.cc Loading commit data...
snapshot-source-sink.cc Loading commit data...
snapshot-source-sink.h Loading commit data...
snapshot-utils.cc Loading commit data...
snapshot-utils.h Loading commit data...
snapshot.cc Loading commit data...
snapshot.h Loading commit data...
startup-deserializer.cc Loading commit data...
startup-deserializer.h Loading commit data...
startup-serializer.cc Loading commit data...
startup-serializer.h Loading commit data...