• Clemens Backes's avatar
    Reland "[wasm] Ensure that only TurboFan code is serialized" · cdd984ef
    Clemens Backes authored
    This is a reland of 60ee70bb.
    The wasm c-api flakes were fixed in https://crrev.com/c/2349293.
    
    Original change's description:
    > [wasm] Ensure that only TurboFan code is serialized
    >
    > We have the implicit assumption that Liftoff code will never be
    > serialized, and we start relying on that when implementing new features
    > (debugging, dynamic tiering).
    >
    > This CL makes the serializer fail if the module contains any Liftoff
    > code. Existing tests are changed to ensure that we fully tiered up
    > before serializing a module (similar to the logic in Chromium).
    > The "wasm-clone-module" test needs to serialize the module before
    > enabling the debugger.
    >
    > Note that chrome currently only serializes a module after it fully
    > tiered up, so that should be fine. If other embedders need the ability
    > to serialize a module in an arbitrary state, we will have to fix this
    > later. With this CL we will be on the safe side though and (gracefully)
    > fail serialization instead of accidentally serializing Liftoff code.
    >
    > R=ahaas@chromium.org
    >
    > Bug: v8:10777
    > Change-Id: I1245e5f7fda3447a544c1e3525e1239cde759174
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2336799
    > Commit-Queue: Clemens Backes <clemensb@chromium.org>
    > Reviewed-by: Andreas Haas <ahaas@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#69276}
    
    Bug: v8:10777
    Change-Id: I2a7c1429812ca46d88a2902b8e0a7b7e3d638b56
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2349290Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#69335}
    cdd984ef
wasm-serialization.cc 25 KB