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

Issue 1504713014: Initial import of v8-native WASM. (Closed)

Created:
5 years ago by titzer
Modified:
5 years ago
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Initial import of v8-native WASM. As discussed in person, this adds the code from v8-native-prototype into V8 proper, guarded by GYP flags that do not build the code by default. Passing wasm=on to 'make' or setting v8_wasm as a GYP flag activates building of this code. An additional header file is added to and exported from the compiler directory, src/compiler/wasm-compiler.h. This exposes a limited interface with opaque Node and Graph types to the decoder to build TF graphs, as well as functions to compile WASM graphs. The mjsunit tests added are blacklisted because they fail without the WASM object exposed to JS, which is also disabled by the build config option. This corresponds closely to https://github.com/WebAssembly/v8-native-prototype/commit/5981e06ebc9b1e578831d03100f17ebb77970ee0, with some formatting fixes and moving some files into src/compiler. R=mstarzinger@chromium.org, bradnelson@chromium.org BUG= Committed: https://crrev.com/4c5b3609fd4de3e0c1092373d1654862395ce40f Cr-Commit-Position: refs/heads/master@{#32794}

Patch Set 1 #

Patch Set 2 : #

Total comments: 15

Patch Set 3 : Address review comments. #

Patch Set 4 : Simplifications #

Patch Set 5 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+18081 lines, -5 lines) Patch
M src/DEPS View 1 chunk +1 line, -0 lines 0 comments Download
A src/compiler/wasm-compiler.h View 1 2 1 chunk +179 lines, -0 lines 0 comments Download
A src/compiler/wasm-compiler.cc View 1 2 3 1 chunk +1839 lines, -0 lines 0 comments Download
A src/compiler/wasm-linkage.cc View 1 chunk +277 lines, -0 lines 0 comments Download
A src/wasm/OWNERS View 1 2 3 4 1 chunk +5 lines, -0 lines 0 comments Download
A src/wasm/asm-wasm-builder.h View 1 chunk +33 lines, -0 lines 0 comments Download
A src/wasm/asm-wasm-builder.cc View 1 chunk +938 lines, -0 lines 0 comments Download
A src/wasm/ast-decoder.h View 1 chunk +114 lines, -0 lines 0 comments Download
A src/wasm/ast-decoder.cc View 1 chunk +1577 lines, -0 lines 0 comments Download
A src/wasm/decoder.h View 1 chunk +233 lines, -0 lines 0 comments Download
A src/wasm/encoder.h View 1 chunk +156 lines, -0 lines 0 comments Download
A src/wasm/encoder.cc View 1 chunk +588 lines, -0 lines 0 comments Download
A src/wasm/module-decoder.h View 1 chunk +33 lines, -0 lines 0 comments Download
A src/wasm/module-decoder.cc View 1 chunk +532 lines, -0 lines 0 comments Download
A src/wasm/wasm-js.h View 1 chunk +25 lines, -0 lines 0 comments Download
A src/wasm/wasm-js.cc View 1 chunk +333 lines, -0 lines 0 comments Download
A src/wasm/wasm-macro-gen.h View 1 chunk +265 lines, -0 lines 0 comments Download
A src/wasm/wasm-module.h View 1 chunk +188 lines, -0 lines 0 comments Download
A src/wasm/wasm-module.cc View 1 chunk +493 lines, -0 lines 0 comments Download
A src/wasm/wasm-opcodes.h View 1 chunk +476 lines, -0 lines 0 comments Download
A src/wasm/wasm-opcodes.cc View 1 chunk +132 lines, -0 lines 0 comments Download
A src/wasm/wasm-result.h View 1 chunk +116 lines, -0 lines 0 comments Download
A src/wasm/wasm-result.cc View 1 chunk +53 lines, -0 lines 0 comments Download
M test/cctest/cctest.gyp View 1 chunk +4 lines, -2 lines 0 comments Download
A test/cctest/wasm/test-run-wasm.cc View 1 chunk +3266 lines, -0 lines 0 comments Download
A test/cctest/wasm/test-run-wasm-module.cc View 1 chunk +183 lines, -0 lines 0 comments Download
A test/cctest/wasm/test-signatures.h View 1 chunk +111 lines, -0 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 chunk +3 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/asm-wasm.js View 1 chunk +559 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/calls.js View 1 chunk +143 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/compile-run-basic.js View 1 chunk +29 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/divrem-trap.js View 1 chunk +97 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/ffi.js View 1 chunk +331 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/ffi-error.js View 1 chunk +77 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/indirect-calls.js View 1 chunk +71 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/instantiate-module-basic.js View 1 chunk +60 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/module-memory.js View 1 chunk +181 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/params.js View 1 chunk +137 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/stackwalk.js View 1 chunk +135 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/unreachable.js View 1 chunk +46 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/verify-function-basic-errors.js View 1 chunk +16 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/verify-function-simple.js View 1 chunk +42 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/verify-module-basic-errors.js View 1 chunk +16 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/wasm-constants.js View 1 chunk +246 lines, -0 lines 0 comments Download
A test/mjsunit/wasm/wasm-object-api.js View 1 chunk +9 lines, -0 lines 0 comments Download
M test/unittests/unittests.gyp View 1 2 3 4 1 chunk +5 lines, -2 lines 0 comments Download
A test/unittests/wasm/ast-decoder-unittest.cc View 1 chunk +2387 lines, -0 lines 0 comments Download
A test/unittests/wasm/encoder-unittest.cc View 1 chunk +152 lines, -0 lines 0 comments Download
A test/unittests/wasm/module-decoder-unittest.cc View 1 chunk +847 lines, -0 lines 0 comments Download
A test/unittests/wasm/wasm-macro-gen-unittest.cc View 1 chunk +319 lines, -0 lines 0 comments Download
M tools/gyp/v8.gyp View 1 2 1 chunk +23 lines, -1 line 0 comments Download

Messages

Total messages: 17 (7 generated)
titzer
5 years ago (2015-12-11 09:00:20 UTC) #1
bradn
Did you want to mention the hash of the commit from v8-native-proto you're landing?
5 years ago (2015-12-11 09:02:07 UTC) #3
Michael Starzinger
Looking good, only nits. Also I assume the BUILD.gn file will be adapted in a ...
5 years ago (2015-12-11 09:15:14 UTC) #5
bradn
lgtm Sorry I merged aseem's change before I realized you had this read But let's ...
5 years ago (2015-12-11 09:16:03 UTC) #6
titzer
On 2015/12/11 09:15:14, Michael Starzinger wrote: > Looking good, only nits. Also I assume the ...
5 years ago (2015-12-11 10:16:12 UTC) #7
titzer
https://codereview.chromium.org/1504713014/diff/20001/src/compiler/wasm-compiler.cc File src/compiler/wasm-compiler.cc (right): https://codereview.chromium.org/1504713014/diff/20001/src/compiler/wasm-compiler.cc#newcode156 src/compiler/wasm-compiler.cc:156: WasmGraphBuilder* builder; On 2015/12/11 09:15:14, Michael Starzinger wrote: > ...
5 years ago (2015-12-11 10:16:21 UTC) #8
Michael Starzinger
LGTM on the pieces outside the respective "wasm" directories.
5 years ago (2015-12-11 10:21:41 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1504713014/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1504713014/80001
5 years ago (2015-12-11 12:22:20 UTC) #13
commit-bot: I haz the power
Committed patchset #5 (id:80001)
5 years ago (2015-12-11 12:26:22 UTC) #15
commit-bot: I haz the power
5 years ago (2015-12-11 12:27:15 UTC) #17
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/4c5b3609fd4de3e0c1092373d1654862395ce40f
Cr-Commit-Position: refs/heads/master@{#32794}

Powered by Google App Engine
This is Rietveld 408576698