• Camillo Bruni's avatar
    [web-snapshots] Add runtime function for WebSnapshot creation Part I · a7a996ab
    Camillo Bruni authored
    This CL prepares WebSnapshot for skipping and re-injecting external
    references in the web snapshot. External references are encoded as
    separate object type and allows us to create partial snapshots at
    runtime and reconnect a deserialised snapshot to an existing
    object graph.
    
    Part II will also collect all objects which cannot be serialized by the
    web-snapshot serializer.
    
    Usage:
      snapshot = %WebSnapshotSerialize(root, skip_externals);
      object = %eWebSnapshotDeserializ(snapshot, replaced_externals);
    
    Drive-by-changes:
    - Reduce JSObject Map size in serializer (we ended up with 4 embedder
      fields)
    - Avoid adding non-HeapObject to the discovery_queue_
    - Split off ReadXXX handlers into separate functions
    
    Bug: v8:11525
    Change-Id: Ia6a9914259614c6c288667621b38daa0202d4d72
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3461936Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Commit-Queue: Camillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79211}
    a7a996ab
Name
Last commit
Last update
..
DIR_METADATA Loading commit data...
OWNERS Loading commit data...
runtime-array.cc Loading commit data...
runtime-atomics.cc Loading commit data...
runtime-bigint.cc Loading commit data...
runtime-classes.cc Loading commit data...
runtime-collections.cc Loading commit data...
runtime-compiler.cc Loading commit data...
runtime-date.cc Loading commit data...
runtime-debug.cc Loading commit data...
runtime-forin.cc Loading commit data...
runtime-function.cc Loading commit data...
runtime-futex.cc Loading commit data...
runtime-generator.cc Loading commit data...
runtime-internal.cc Loading commit data...
runtime-intl.cc Loading commit data...
runtime-literals.cc Loading commit data...
runtime-module.cc Loading commit data...
runtime-numbers.cc Loading commit data...
runtime-object.cc Loading commit data...
runtime-operators.cc Loading commit data...
runtime-promise.cc Loading commit data...
runtime-proxy.cc Loading commit data...
runtime-regexp.cc Loading commit data...
runtime-scopes.cc Loading commit data...
runtime-strings.cc Loading commit data...
runtime-symbol.cc Loading commit data...
runtime-test-wasm.cc Loading commit data...
runtime-test.cc Loading commit data...
runtime-trace.cc Loading commit data...
runtime-typedarray.cc Loading commit data...
runtime-utils.h Loading commit data...
runtime-wasm.cc Loading commit data...
runtime-weak-refs.cc Loading commit data...
runtime.cc Loading commit data...
runtime.h Loading commit data...