• Clemens Backes's avatar
    [wasm] Allocate the lazy compile table anywhere · e2c3e4f2
    Clemens Backes authored
    The jump table and far jump table are allocated once per code space, but
    the lazy compile table only needs to exist exactly once, and it does not
    really matter in which code space we allocate it.
    Before dynamic tiering, we could always allocate it in the initial code
    space (which was empty at the point when we allocated it), but with
    deserialization of a partially tiered module we can end up in a
    situation where we first deserialize some TurboFan functions into the
    initial code space, and when we later try to allocate the lazy compile
    table (when we encounter the first non-serialized function) we do not
    have enough space any more in the initial code space.
    
    This CL allows to allocate the lazy compile jump table in any code space
    to avoid that failure.
    
    R=thibaudm@chromium.org
    
    Bug: chromium:1348472, chromium:1348214
    Change-Id: I58c9a8a6541f2ab7df26ddfd1b65d31cc99337fc
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3792607Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#82086}
    e2c3e4f2
wasm-code-manager.cc 104 KB