• Clemens Hammacher's avatar
    Revert "[wasm] Don't store global handles in the interpreter" · 199a26f7
    Clemens Hammacher authored
    This reverts commit 5648aad5.
    
    Reason for revert: Compile error on mips:
    https://build.chromium.org/p/client.v8.ports/builders/V8%20Mips%20-%20builder/builds/10732
    
    Original change's description:
    > [wasm] Don't store global handles in the interpreter
    > 
    > Storing global handles in the interpreter is dangerous, because the
    > global handles are strong roots into the heap. The interpreter itself is
    > referenced from the heap via a Managed. Hence the interpreter keeps the
    > instance alive, while the instance keeps the Managed alive. So the GC
    > will never collect them.
    > 
    > This CL refactors this to only store the handle to the instance object
    > while executing in the interpreter, and clearing it when returning.
    > It also removes the cache of import wrappers, as it should not be
    > performance critical, but keeps lots of objects alive. If it turns out
    > to be performance critical, we will have to reintroduce such a cache
    > stored in the WasmDebugInfo object.
    > 
    > R=​titzer@chromium.org
    > CC=ahaas@chromium.org
    > 
    > Bug: chromium:610330
    > Change-Id: I54b489dadc16685887c0c1a98da6fd0df5ad7cbb
    > Reviewed-on: https://chromium-review.googlesource.com/567058
    > Reviewed-by: Ben Titzer <titzer@chromium.org>
    > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#46629}
    
    TBR=titzer@chromium.org,clemensh@chromium.org
    
    Change-Id: Ifadfb885f937f37bb3eab4732a97f20ff40c2583
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: chromium:610330
    Reviewed-on: https://chromium-review.googlesource.com/569962Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#46630}
    199a26f7
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
promises-aplus Loading commit data...
test262 Loading commit data...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...
bot_default.gyp Loading commit data...
bot_default.isolate Loading commit data...
default.gyp Loading commit data...
default.isolate Loading commit data...
optimize_for_size.gyp Loading commit data...
optimize_for_size.isolate Loading commit data...
perf.gyp Loading commit data...
perf.isolate Loading commit data...