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

Issue 2763413003: [wasm] Skeleton WasmModuleObjectBuilder for streamed compilation (Closed)

Created:
3 years, 9 months ago by Mircea Trofin
Modified:
3 years, 9 months ago
Reviewers:
clemensh, bradnelson, ahaas
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/heads/master
Project:
v8
Visibility:
Public.

Description

[wasm] Skeleton WasmModuleObjectBuilder for streamed compilation APIs and trivial implementation, to unblock Chrome side dev. BUG=chromium:697028 Review-Url: https://codereview.chromium.org/2763413003 Cr-Commit-Position: refs/heads/master@{#44053} Committed: https://chromium.googlesource.com/v8/v8/+/78905107d3a6465f346d909fa7f1c22ffec144c2

Patch Set 1 #

Patch Set 2 : fix leak #

Patch Set 3 : [wasm] Skeleton WasmModuleObjectBuilder for streamed compilation #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+108 lines, -0 lines) Patch
M include/v8.h View 1 2 3 chunks +29 lines, -0 lines 2 comments Download
M src/api.cc View 1 2 1 chunk +18 lines, -0 lines 0 comments Download
M test/cctest/wasm/test-run-wasm-module.cc View 1 chunk +61 lines, -0 lines 0 comments Download

Messages

Total messages: 47 (34 generated)
Mircea Trofin
Added a skeleton API for streamed compilation on the V8 side, to unblock my work ...
3 years, 9 months ago (2017-03-22 18:16:54 UTC) #7
ahaas
lgtm
3 years, 9 months ago (2017-03-22 18:41:58 UTC) #8
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/2763413003/20001
3 years, 9 months ago (2017-03-22 20:42:04 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: v8_win_compile_dbg on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_compile_dbg/builds/34741) v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, ...
3 years, 9 months ago (2017-03-22 20:48:16 UTC) #17
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/2763413003/40001
3 years, 9 months ago (2017-03-22 21:10:34 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: v8_win_nosnap_shared_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win_nosnap_shared_rel_ng/builds/19470)
3 years, 9 months ago (2017-03-22 21:15:05 UTC) #22
bradnelson
lgtm (sans compile failure on the bots)
3 years, 9 months ago (2017-03-22 22:34:16 UTC) #23
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/2763413003/100001
3 years, 9 months ago (2017-03-23 01:46:02 UTC) #39
commit-bot: I haz the power
Committed patchset #3 (id:100001) as https://chromium.googlesource.com/v8/v8/+/78905107d3a6465f346d909fa7f1c22ffec144c2
3 years, 9 months ago (2017-03-23 01:47:27 UTC) #42
clemensh
https://codereview.chromium.org/2763413003/diff/100001/include/v8.h File include/v8.h (right): https://codereview.chromium.org/2763413003/diff/100001/include/v8.h#newcode3917 include/v8.h:3917: // TODO(mtrofin): rename WasmCompiledModule to WasmModuleObject, for FYI: Ben ...
3 years, 9 months ago (2017-03-27 07:39:20 UTC) #44
Mircea Trofin
https://codereview.chromium.org/2763413003/diff/100001/include/v8.h File include/v8.h (right): https://codereview.chromium.org/2763413003/diff/100001/include/v8.h#newcode3917 include/v8.h:3917: // TODO(mtrofin): rename WasmCompiledModule to WasmModuleObject, for On 2017/03/27 ...
3 years, 9 months ago (2017-03-27 07:58:30 UTC) #45
Clemens Hammacher
On 2017/03/27 at 07:58:30, mtrofin wrote: > https://codereview.chromium.org/2763413003/diff/100001/include/v8.h > File include/v8.h (right): > > https://codereview.chromium.org/2763413003/diff/100001/include/v8.h#newcode3917 ...
3 years, 9 months ago (2017-03-27 08:05:34 UTC) #46
Mircea Trofin
3 years, 9 months ago (2017-03-27 08:09:33 UTC) #47
Message was sent while issue was closed.
On 2017/03/27 08:05:34, Clemens Hammacher wrote:
> On 2017/03/27 at 07:58:30, mtrofin wrote:
> > https://codereview.chromium.org/2763413003/diff/100001/include/v8.h
> > File include/v8.h (right):
> > 
> >
>
https://codereview.chromium.org/2763413003/diff/100001/include/v8.h#newcode3917
> > include/v8.h:3917: // TODO(mtrofin): rename WasmCompiledModule to
> WasmModuleObject, for
> > On 2017/03/27 07:39:20, clemensh wrote:
> > > FYI: Ben once had the plan to rename this to WasmSpecializedCode.
> > > The problem with the current name (and also "WasmModuleObject") is that
this
> > > suggests that only one such object exists per module, which is not the
case.
> > 
> > By "module" you mean "wire bytes"?
> > 
> > An instance of WasmCompiledModule is the v8 wrapping of an instance of the
JS
> type "WebAssembly.Module".  Not sure where the problem is: the user knows they
> can create multiple WebAssembly.Module objects from the same instance of wire
> bytes. Same here.
> 
> That correspondance does not hold (and that's exactly the problem).
> The WasmCompiledModule object is cloned for each (live) instance. Hence it
> corresponds more to an instance than a module.
> And it's purpose is mainly to hold the code objects that were specialized to
> that instance. If the last instance of a "WebAssembly.Module" is GCed, then
the
> WasmCompiledModule object of that instance is reset and reused for another
> instantiation of the same module.

Ah, there is a problem, but that's the name: this here is actually the module
object, not
just the compiled functions. It's the "m" and "n", separately, in:

var m = new WebAssembly.Module(some_bytes);
var n = new WebAssembly.Module(some_bytes);

Hence my wanting to rename the external concept to match the JS API and also the
internal
API (i::WasmModuleObject), which is different from the internal notion of
"compiled part" and all that.

Powered by Google App Engine
This is Rietveld 408576698