v8/test
Andreas Haas 5d587693a6 [wasm][anyref] Implement sub-typing of anyref, anyfunc, and nullref
For the reference types anyref, anyfunc, and nullref, there exist
sub-typing rules. The spec says

A reference type reftype1 matches a reference type reftype2 if and only
if:

* Either both reftype1 and reftype2 are the same.
* Or reftype1 is nullref.
* Or reftype2 is anyref.

This CL introduces the type nullref for ref-null, and implements the
sub-typing rules in the function-body-decoder.

Note that because of the sub-typing check validation performance may
regresses. In that case we can optimize the sub-typing check.

R=titzer@chromium.org, clemensh@chromium.org

Bug: v8:7581
Change-Id: I55bab72a109f3374da3770d141b0fc8067aad8b2
Reviewed-on: https://chromium-review.googlesource.com/c/1430061
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Ben Titzer <titzer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#59043}
2019-01-23 16:11:15 +00:00
..
benchmarks [Test] CSuite benchmark runner 2018-12-21 13:15:57 +00:00
cctest [nojit] Ship the regexp interpreter unconditionally 2019-01-23 16:06:31 +00:00
common [test] Refactor AllocateAssemblerBuffer 2019-01-17 11:57:07 +00:00
debugger [parser] Iterate declarations to set initializer positions 2019-01-23 13:28:58 +00:00
fuzzer [logger] Untangle log.h includes 2019-01-22 10:56:52 +00:00
inspector [parser] Iterate declarations to set initializer positions 2019-01-23 13:28:58 +00:00
intl [Intl] Remove linebreak from Segmenter 2019-01-23 04:54:56 +00:00
js-perf-test [test] add performance tests for String#startsWith 2019-01-17 08:23:06 +00:00
memory [snapshot] Remove the builtins snapshot 2018-10-31 10:18:28 +00:00
message [parsing] Don't validate module if parsing failed. 2019-01-23 12:09:17 +00:00
mjsunit [wasm][anyref] Implement sub-typing of anyref, anyfunc, and nullref 2019-01-23 16:11:15 +00:00
mkgrokdump [nojit] Don't allocate executable memory in jitless mode 2019-01-10 10:55:48 +00:00
mozilla Revert "[runtime] Reduce spread/apply call max arguments" 2018-11-30 09:54:47 +00:00
preparser [test] Share resource-fetching logic with all d8 test cases 2018-08-29 17:51:43 +00:00
test262 [Intl] Remove linebreak from Segmenter 2019-01-23 04:54:56 +00:00
torque Reland "[torque] Implement safe initialization of classes through hidden structs" 2019-01-22 17:49:39 +00:00
unittests Revert "Expose the number of microtasks from RunMicrotasks" 2019-01-23 08:21:51 +00:00
wasm-js [wasm] fix js-api memory/grow 2019-01-22 19:03:05 +00:00
wasm-spec-tests [wasm] Update spec tests 2019-01-23 14:57:21 +00:00
webkit [array] Enable copying from the prototype chain when sorting JSArrays 2019-01-22 16:34:38 +00:00
BUILD.gn Reland "[wasm] Add a new wasm-js testsuite to run js-api tests" 2018-10-18 20:18:55 +00:00