• Clemens Hammacher's avatar
    Reland "[wasm] Split compilation in three stages" · 6c2e35b9
    Clemens Hammacher authored
    This is a reland of 4e1d7c87.
    Failure on arm and arm64 is fixed by https://crrev.com/c/1411885.
    
    Original change's description:
    > [wasm] Split compilation in three stages
    >
    > In order to refactor ownership between objects in wasm compilation, the
    > compilation (executed by background tasks) is split in three stages:
    > getting a compilation unit (while holding a mutex), executing the work
    > (without any mutex and without keeping the NativeModule alive), and
    > submitting the work (with a mutex again).
    >
    > This CL prepares this design by splitting compilation from submission.
    > Both steps are still executed right after each other. This will be
    > changed in a follow-up CL.
    >
    > R=titzer@chromium.org
    > CC=mstarzinger@chromium.org
    >
    > Bug: v8:8689
    > Change-Id: I2f92aee8e2f2d45470d8c63314ed026341630902
    > Reviewed-on: https://chromium-review.googlesource.com/c/1414920
    > Reviewed-by: Ben Titzer <titzer@chromium.org>
    > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#58929}
    
    TBR=titzer@chromium.org
    
    Bug: v8:8689
    Change-Id: I58ff07d0e0ac8df0f6ee23c416f992954f4673d2
    Reviewed-on: https://chromium-review.googlesource.com/c/1422748Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#58959}
    6c2e35b9
wasm-compiler.cc 243 KB