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

Issue 1972153002: [wasm] Implement an interpreter for WASM. (Closed)

Created:
4 years, 7 months ago by titzer
Modified:
4 years, 6 months ago
CC:
Michael Hablich, 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

[wasm] Implement an interpreter for WASM. This interpreter directly decodes and executes WASM binary code for the purpose of supporting low-level debugging. It is not currently integrated into the main WASM implementation. R=ahaas@chromium.org,clemensh@chromium.org,rossberg@chromium.org,binji@chromium.org BUG= Committed: https://crrev.com/e4bb7ff96c463f34dc3a8aa9143d3aed57ddaa88 Cr-Commit-Position: refs/heads/master@{#36497}

Patch Set 1 #

Total comments: 56

Patch Set 2 : Address first round of review comments. #

Patch Set 3 : Add dual-mode execution to WASM execution tests. #

Patch Set 4 : Fix GN build. #

Patch Set 5 : Fix NaNs. #

Patch Set 6 : #

Patch Set 7 : #

Patch Set 8 : #

Patch Set 9 : #

Patch Set 10 : #

Patch Set 11 : #

Patch Set 12 : #

Patch Set 13 : stupid skip #

Total comments: 41

Patch Set 14 : #

Patch Set 15 : #

Patch Set 16 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3263 lines, -530 lines) Patch
M BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +2 lines, -0 lines 0 comments Download
M src/flag-definitions.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
M src/v8.gyp View 1 2 3 4 9 10 11 12 13 14 15 1 chunk +2 lines, -0 lines 0 comments Download
A src/wasm/wasm-interpreter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +206 lines, -0 lines 0 comments Download
A src/wasm/wasm-interpreter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +1787 lines, -0 lines 0 comments Download
M src/wasm/wasm-macro-gen.h View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M test/cctest/cctest.gyp View 1 2 3 4 9 10 11 12 13 14 15 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/wasm/test-run-wasm.cc View 1 2 131 chunks +398 lines, -354 lines 0 comments Download
M test/cctest/wasm/test-run-wasm-64.cc View 1 2 69 chunks +135 lines, -100 lines 0 comments Download
M test/cctest/wasm/test-run-wasm-asmjs.cc View 1 2 12 chunks +16 lines, -12 lines 0 comments Download
A test/cctest/wasm/test-run-wasm-interpreter.cc View 1 2 1 chunk +153 lines, -0 lines 0 comments Download
M test/cctest/wasm/wasm-run-utils.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 18 chunks +155 lines, -57 lines 0 comments Download
M test/unittests/unittests.gyp View 1 1 chunk +1 line, -0 lines 0 comments Download
M test/unittests/wasm/ast-decoder-unittest.cc View 1 2 4 chunks +2 lines, -5 lines 0 comments Download
A test/unittests/wasm/control-transfer-unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +402 lines, -0 lines 0 comments Download

Messages

Total messages: 20 (4 generated)
titzer
4 years, 7 months ago (2016-05-12 11:55:41 UTC) #1
Clemens Hammacher
That's an impressive piece of software! A pleasure to review :) A few comments below. ...
4 years, 7 months ago (2016-05-12 15:20:55 UTC) #2
ahaas
https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc File src/wasm/wasm-interpreter.cc (right): https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc#newcode250 src/wasm/wasm-interpreter.cc:250: uint32_t ia = bit_cast<uint32_t>(a) & 0x7fffffff; There exists a ...
4 years, 7 months ago (2016-05-13 12:18:56 UTC) #3
dougc
https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc File src/wasm/wasm-interpreter.cc (right): https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc#newcode794 src/wasm/wasm-interpreter.cc:794: break; Might the value_depth need to be checked against ...
4 years, 7 months ago (2016-05-13 13:23:28 UTC) #5
titzer
PTAL. I've added dual-mode execution for all WASM_EXEC_TESTS now. https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc File src/wasm/wasm-interpreter.cc (right): https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc#newcode84 src/wasm/wasm-interpreter.cc:84: ...
4 years, 7 months ago (2016-05-23 11:41:39 UTC) #6
titzer
On 2016/05/23 11:41:39, titzer wrote: > PTAL. > > I've added dual-mode execution for all ...
4 years, 7 months ago (2016-05-24 09:23:10 UTC) #7
Clemens Hammacher
> https://codereview.chromium.org/1972153002/diff/1/src/wasm/wasm-interpreter.cc#newcode316 > > src/wasm/wasm-interpreter.cc:316: V(I32Clz, uint32_t, _) \ > > On 2016/05/12 15:20:55, Clemens ...
4 years, 7 months ago (2016-05-24 12:47:03 UTC) #8
ahaas
https://codereview.chromium.org/1972153002/diff/240001/src/wasm/wasm-interpreter.cc File src/wasm/wasm-interpreter.cc (right): https://codereview.chromium.org/1972153002/diff/240001/src/wasm/wasm-interpreter.cc#newcode118 src/wasm/wasm-interpreter.cc:118: if (b == -1 && a == 0x80000000) { ...
4 years, 7 months ago (2016-05-24 14:48:27 UTC) #9
titzer
https://codereview.chromium.org/1972153002/diff/240001/src/wasm/wasm-interpreter.cc File src/wasm/wasm-interpreter.cc (right): https://codereview.chromium.org/1972153002/diff/240001/src/wasm/wasm-interpreter.cc#newcode862 src/wasm/wasm-interpreter.cc:862: if (function->func_index > interpreter_code_.size()) { On 2016/05/24 12:47:03, Clemens ...
4 years, 7 months ago (2016-05-24 14:50:48 UTC) #10
titzer
https://codereview.chromium.org/1972153002/diff/240001/src/wasm/wasm-interpreter.cc File src/wasm/wasm-interpreter.cc (right): https://codereview.chromium.org/1972153002/diff/240001/src/wasm/wasm-interpreter.cc#newcode118 src/wasm/wasm-interpreter.cc:118: if (b == -1 && a == 0x80000000) { ...
4 years, 7 months ago (2016-05-24 15:09:52 UTC) #11
ahaas
lgtm
4 years, 7 months ago (2016-05-24 16:25:15 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1972153002/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1972153002/300001
4 years, 7 months ago (2016-05-25 08:24:01 UTC) #15
commit-bot: I haz the power
Committed patchset #16 (id:300001)
4 years, 7 months ago (2016-05-25 08:32:48 UTC) #16
commit-bot: I haz the power
Patchset 16 (id:??) landed as https://crrev.com/e4bb7ff96c463f34dc3a8aa9143d3aed57ddaa88 Cr-Commit-Position: refs/heads/master@{#36497}
4 years, 7 months ago (2016-05-25 08:33:22 UTC) #18
Michael Achenbach
FYI: Our cfi bot failed after this CL: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20cfi/builds/4428 Fix desired, but not super-urgent...
4 years, 6 months ago (2016-06-06 14:34:02 UTC) #19
Michael Achenbach
4 years, 6 months ago (2016-06-08 14:34:04 UTC) #20
Message was sent while issue was closed.
On 2016/06/06 14:34:02, Michael Achenbach wrote:
> FYI: Our cfi bot failed after this CL:
>
https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20cfi/builds...
> 
> Fix desired, but not super-urgent...

Of course, the bot is now very red and we won't spot any other cfi failures
easily. What would be the ETA of a fix?

Powered by Google App Engine
This is Rietveld 408576698