• machenbach's avatar
    Revert of [wasm] reuse the first compiled module (patchset #12 id:220001 of... · 359a00bf
    machenbach authored
    Revert of [wasm] reuse the first compiled module (patchset #12 id:220001 of https://codereview.chromium.org/2305903002/ )
    
    Reason for revert:
    mac gc stress failures:
    https://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/8341
    
    Original issue's description:
    > [wasm] reuse the first compiled module.
    >
    > This change avoids needing to keep around an unused compiled
    > module. Instead, the result of compiling the wasm bytes is
    > given to the first instance. The module object and that instance object
    > point to the same compiled module. Instances are, then, cloned from
    > the compiled module the module object points to. When an instance is
    > collected, we make sure that the module object still has a clone
    > available, and, if the last instance is GC-ed, we also reset the compiled
    > module so that it does not reference its heap, so that it (==heap) may
    > be collected.
    >
    > This is achieved by linking the clones in a double-linked list and
    > registering a finalizer for each. When we create an instance, we tie it
    > in the front of the list, making the module object point to it (O(1)). When
    > the finalizer is called, we relink the list over the dying object (O(1)). The
    > costliest operation is finalizing the last instance, since we need to visit
    > all wasm functions and reset heap references.
    >
    > BUG=v8:5316
    >
    > Committed: https://crrev.com/01f5af515728aebe6c5246f4f7dd6c573e8748af
    > Cr-Commit-Position: refs/heads/master@{#39153}
    
    TBR=bradnelson@chromium.org,verwaest@chromium.org,vogelheim@chromium.org,yangguo@chromium.org,mtrofin@chromium.org
    # Skipping CQ checks because original CL landed less than 1 days ago.
    NOPRESUBMIT=true
    NOTREECHECKS=true
    NOTRY=true
    BUG=v8:5316
    
    Review-Url: https://codereview.chromium.org/2306403002
    Cr-Commit-Position: refs/heads/master@{#39154}
    359a00bf
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
gypfiles Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party/binutils Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...