• Clemens Hammacher's avatar
    Reland "[wasm] Introduce jump table" · 5f56641b
    Clemens Hammacher authored
    This is a reland of 733b7c82.
    The arm64 bug was fixed in https://crrev.com/c/1105051.
    
    Original change's description:
    > [wasm] Introduce jump table
    >
    > This introduces the concept of a jump table for WebAssembly, which is
    > used for every direct and indirect call to any WebAssembly function.
    > For lazy compilation, it will initially contain code to call the
    > WasmCompileLazy builtin, where it passes the function index to be
    > called.
    > For non-lazy-compilation, it will contain a jump to the actual code.
    > The jump table allows to easily redirect functions for lazy
    > compilation, tier-up, debugging and (in the future) code aging. After
    > this CL, we will not need to patch existing code any more for any of
    > these operations.
    >
    > R=mstarzinger@chromium.org, titzer@chromium.org
    >
    > Bug: v8:7758
    > Change-Id: I45f9983c2b06ae81bf5ce9847f4542fb48844a4f
    > Reviewed-on: https://chromium-review.googlesource.com/1097075
    > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    > Reviewed-by: Ben Titzer <titzer@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#53805}
    
    TBR=titzer@chromium.org,mstarzinger@chromium.org
    
    Bug: v8:7758
    Change-Id: I68555230c6db97e70f0b8fef784188f55ee04794
    Reviewed-on: https://chromium-review.googlesource.com/1105158
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#53829}
    5f56641b
builtins-x64.cc 108 KB