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

Issue 1900213002: Subzero - WASM: Codegen fixes, better test infrastructure (Closed)

Created:
4 years, 8 months ago by Eric Holk
Modified:
4 years, 8 months ago
Reviewers:
Jim Stichnoth, Karl, sehr, John
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Subzero - WASM: Codegen fixes, better test infrastructure Fixes several bugs in code generation, including handling of booleans, comparisons and shifts. The tests that get through code generation now run successfully (except for the tests that are known to fail on https://wasm-stat.us/). This change also includes improvements to the test infrastructure. The wasm test runner has a list of expected failures to skip. The tests now run in parallel, which significantly cuts down the time to run the whole test suite. Finally, there are some minor improvements to the WASM runtime, including an implementation of syscall20, i.e. getpid(). BUG= https://bugs.chromium.org/p/nativeclient/issues/detail?id=4369 R=kschimpf@google.com, stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=29acb5751ac1ce388a20569ee54a7ad4cacdb536

Patch Set 1 #

Patch Set 2 : Duplicate code removal #

Patch Set 3 : More bug fixes #

Patch Set 4 : Copyright notice and TODO #

Total comments: 2

Patch Set 5 : Merge wasm-runtime.c and wasm-runtime.cpp #

Total comments: 8

Patch Set 6 : Review feedback #

Total comments: 4

Patch Set 7 : Code review feedback. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+454 lines, -231 lines) Patch
M c2wasm-exe.sh View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M pydir/wasm-run-torture-tests.py View 1 2 3 4 4 chunks +161 lines, -48 lines 0 comments Download
M runtime/wasm-runtime.c View 1 2 3 4 1 chunk +0 lines, -147 lines 0 comments Download
A + runtime/wasm-runtime.cpp View 1 2 3 4 5 8 chunks +39 lines, -15 lines 0 comments Download
M src/WasmTranslator.cpp View 1 2 3 4 5 6 15 chunks +251 lines, -19 lines 4 comments Download

Messages

Total messages: 14 (4 generated)
Eric Holk
4 years, 8 months ago (2016-04-20 18:44:16 UTC) #2
John
https://codereview.chromium.org/1900213002/diff/60001/runtime/wasm-runtime.cpp File runtime/wasm-runtime.cpp (right): https://codereview.chromium.org/1900213002/diff/60001/runtime/wasm-runtime.cpp#newcode15 runtime/wasm-runtime.cpp:15: // TODO (eholk): port wasm-runtime.c into this file, using ...
4 years, 8 months ago (2016-04-20 19:18:14 UTC) #3
Eric Holk
https://codereview.chromium.org/1900213002/diff/60001/runtime/wasm-runtime.cpp File runtime/wasm-runtime.cpp (right): https://codereview.chromium.org/1900213002/diff/60001/runtime/wasm-runtime.cpp#newcode15 runtime/wasm-runtime.cpp:15: // TODO (eholk): port wasm-runtime.c into this file, using ...
4 years, 8 months ago (2016-04-20 19:51:58 UTC) #4
John
https://codereview.chromium.org/1900213002/diff/80001/runtime/wasm-runtime.cpp File runtime/wasm-runtime.cpp (right): https://codereview.chromium.org/1900213002/diff/80001/runtime/wasm-runtime.cpp#newcode168 runtime/wasm-runtime.cpp:168: } maybe } // end of extern "C" Check ...
4 years, 8 months ago (2016-04-20 20:04:59 UTC) #5
Eric Holk
https://codereview.chromium.org/1900213002/diff/80001/runtime/wasm-runtime.cpp File runtime/wasm-runtime.cpp (right): https://codereview.chromium.org/1900213002/diff/80001/runtime/wasm-runtime.cpp#newcode168 runtime/wasm-runtime.cpp:168: } On 2016/04/20 20:04:59, John wrote: > maybe > ...
4 years, 8 months ago (2016-04-20 20:25:36 UTC) #6
Karl
Otherwise LGTM. https://codereview.chromium.org/1900213002/diff/100001/pydir/wasm-run-torture-tests.py File pydir/wasm-run-torture-tests.py (right): https://codereview.chromium.org/1900213002/diff/100001/pydir/wasm-run-torture-tests.py#newcode175 pydir/wasm-run-torture-tests.py:175: print('\033[1;31m[compile fail]\033[1;m', file=out) Are these parenthesis necessary? ...
4 years, 8 months ago (2016-04-21 19:14:17 UTC) #9
Eric Holk
https://codereview.chromium.org/1900213002/diff/100001/pydir/wasm-run-torture-tests.py File pydir/wasm-run-torture-tests.py (right): https://codereview.chromium.org/1900213002/diff/100001/pydir/wasm-run-torture-tests.py#newcode175 pydir/wasm-run-torture-tests.py:175: print('\033[1;31m[compile fail]\033[1;m', file=out) On 2016/04/21 19:14:17, Karl wrote: > ...
4 years, 8 months ago (2016-04-21 21:56:02 UTC) #10
Jim Stichnoth
lgtm https://codereview.chromium.org/1900213002/diff/120001/src/WasmTranslator.cpp File src/WasmTranslator.cpp (right): https://codereview.chromium.org/1900213002/diff/120001/src/WasmTranslator.cpp#newcode465 src/WasmTranslator.cpp:465: const SizeT BitCount = typeWidthInBytes(DestTy) * 8; CHAR_BIT ...
4 years, 8 months ago (2016-04-22 00:26:36 UTC) #11
Eric Holk
Committed patchset #7 (id:120001) manually as 29acb5751ac1ce388a20569ee54a7ad4cacdb536 (presubmit successful).
4 years, 8 months ago (2016-04-22 16:34:45 UTC) #13
Eric Holk
4 years, 8 months ago (2016-04-22 16:34:56 UTC) #14
Message was sent while issue was closed.
https://codereview.chromium.org/1900213002/diff/120001/src/WasmTranslator.cpp
File src/WasmTranslator.cpp (right):

https://codereview.chromium.org/1900213002/diff/120001/src/WasmTranslator.cpp...
src/WasmTranslator.cpp:465: const SizeT BitCount = typeWidthInBytes(DestTy) * 8;
On 2016/04/22 00:26:36, stichnot wrote:
> CHAR_BIT

Done.

https://codereview.chromium.org/1900213002/diff/120001/src/WasmTranslator.cpp...
src/WasmTranslator.cpp:491: const SizeT BitCount = typeWidthInBytes(DestTy) * 8;
On 2016/04/22 00:26:36, stichnot wrote:
> CHAR_BIT

Done.

Powered by Google App Engine
This is Rietveld 408576698