Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(130)

Issue 2306403002: Revert of [wasm] reuse the first compiled module (Closed)

Created:
4 years, 3 months ago by Michael Achenbach
Modified:
4 years, 3 months ago
CC:
v8-reviews_googlegroups.com, Yang
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

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 Committed: https://crrev.com/359a00bf6fc6453c9d11f0b276e05f10666f9f24 Cr-Commit-Position: refs/heads/master@{#39154}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+148 lines, -568 lines) Patch
M src/runtime/runtime.h View 1 chunk +1 line, -4 lines 0 comments Download
M src/runtime/runtime-test.cc View 1 chunk +0 lines, -26 lines 0 comments Download
M src/runtime/runtime-wasm.cc View 4 chunks +13 lines, -9 lines 0 comments Download
M src/snapshot/code-serializer.h View 2 chunks +0 lines, -3 lines 0 comments Download
M src/snapshot/code-serializer.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M src/wasm/wasm-module.h View 2 chunks +0 lines, -10 lines 0 comments Download
M src/wasm/wasm-module.cc View 26 chunks +118 lines, -420 lines 0 comments Download
D test/mjsunit/wasm/compiled-module-management.js View 1 chunk +0 lines, -50 lines 0 comments Download
M test/mjsunit/wasm/instantiate-module-basic.js View 1 chunk +16 lines, -42 lines 0 comments Download

Messages

Total messages: 7 (3 generated)
Michael Achenbach
Created Revert of [wasm] reuse the first compiled module
4 years, 3 months ago (2016-09-05 10:49:21 UTC) #2
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2306403002/1
4 years, 3 months ago (2016-09-05 10:49:27 UTC) #3
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 3 months ago (2016-09-05 10:49:40 UTC) #5
commit-bot: I haz the power
4 years, 3 months ago (2016-09-05 10:50:04 UTC) #7
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/359a00bf6fc6453c9d11f0b276e05f10666f9f24
Cr-Commit-Position: refs/heads/master@{#39154}

Powered by Google App Engine
This is Rietveld 408576698