Intent to Ship: WebAssembly multi-value

124 views
Skip to first unread message

Thibaud Michaud

unread,
Jun 16, 2020, 11:52:45 AM6/16/20
to blin...@chromium.org, v8-u...@googlegroups.com

Contact emails

thib...@chromium.org, ecmzi...@chromium.org 


Explainer
https://github.com/WebAssembly/multi-value/blob/master/proposals/multi-value/Overview.md

Spec

WebAssembly multi-value spec repository:

https://github.com/WebAssembly/multi-value/

Recently merged into the core WebAssembly spec repository:

https://github.com/WebAssembly/spec/


The V8 feature launch process does not require a TAG review for small language features which do not affect other Web APIs.


Summary

The WebAssembly multi-value feature allows WebAssembly functions and blocks to consume and return an arbitrary number of values. JavaScript functions returning iterables can be imported as multi-value functions in WebAssembly, and multi-value WebAssembly functions can be exported as functions returning arrays to JavaScript.


Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes.


Risks

Interoperability and Compatibility

The feature specification is finished and merged into the core WebAssembly spec. It is already enabled by default in Firefox and in WebKit.


Is this feature fully tested by web-platform-tests?

WPT are not required according to the V8 feature launch process, the V8 test suite already includes the WebAssembly spec tests and additional JavaScript tests.


Entry on the feature dashboard

https://chromestatus.com/features/5192420329259008


Requesting approval to ship?
Yes.

Thibaud Michaud

unread,
Jun 16, 2020, 11:54:36 AM6/16/20
to blin...@chromium.org, v8-u...@googlegroups.com

Spec

WebAssembly multi-value spec repository:

https://github.com/WebAssembly/multi-value/

Recently merged into the core WebAssembly spec repository:

Summary

The WebAssembly multi-value feature allows WebAssembly functions and blocks to consume and return an arbitrary number of values. They were previously limited to returning 0 or 1 value, and blocks were not allowed to consume values. JavaScript functions returning iterables can be imported as multi-value functions in WebAssembly, and multi-value WebAssembly functions can be exported as functions returning arrays to JavaScript.


Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes.


Risks

Interoperability and Compatibility

The feature specification is finished and merged into the core WebAssembly spec. It is already enabled by default in Firefox and in WebKit.


Is this feature fully tested by web-platform-tests?

The feature is tested by the V8 test suite, which includes the WebAssembly spec tests and additional JavaScript tests.

Yoav Weiss

unread,
Jun 19, 2020, 9:31:19 AM6/19/20
to Thibaud Michaud, blink-dev, v8-users
LGTM1 as this is catching up with Firefox and Safari.

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALowwNZ7C_F183%2Bb1QVuNuCfJnmBAJyz7Rh2RegZ9W1dq%2BsEWA%40mail.gmail.com.

Manuel Rego Casasnovas

unread,
Jun 19, 2020, 9:50:18 AM6/19/20
to Yoav Weiss, Thibaud Michaud, blink-dev, v8-users
LGTM2

On 19/06/2020 15:30, Yoav Weiss wrote:
> LGTM1 as this is catching up with Firefox and Safari.
>
> On Tue, Jun 16, 2020 at 5:54 PM 'Thibaud Michaud' via blink-dev
> <blin...@chromium.org <mailto:blin...@chromium.org>> wrote:
>
> Contact emails
>
> thib...@chromium.org <mailto:thib...@chromium.org>,
> ecmzi...@chromium.org <mailto:ecmzi...@chromium.org
>
>
> Spec
>
> WebAssembly multi-value spec repository:
>
> https://github.com/WebAssembly/multi-value/
>
> Recently merged into the core WebAssembly spec repository:
>
> https://github.com/WebAssembly/spec/
>
>
> Summary
>
> The WebAssembly multi-value feature allows WebAssembly functions and
> blocks to consume and return an arbitrary number of values. They
> were previously limited to returning 0 or 1 value, and blocks were
> not allowed to consume values. JavaScript functions returning
> iterables can be imported as multi-value functions in WebAssembly,
> and multi-value WebAssembly functions can be exported as functions
> returning arrays to JavaScript.
>
>
> Is this feature supported on all six Blink platforms (Windows, Mac,
> Linux, Chrome OS, Android, and Android WebView)?
>
> Yes.
>
>
> Risks
>
> Interoperability and Compatibility
>
> The feature specification is finished
> <https://github.com/WebAssembly/proposals/blob/master/finished-proposals.md> and
> merged into the core WebAssembly spec
> <https://github.com/WebAssembly/spec>. It is already enabled by
> default in Firefox
> <https://bugzilla.mozilla.org/show_bug.cgi?id=1628321> and in WebKit
> <https://bugs.webkit.org/show_bug.cgi?id=202250>.
>
>
> Is this feature fully tested by web-platform-tests
> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>?
>
> The feature is tested by the V8 test suite, which includes the
> WebAssembly spec tests
> <https://github.com/WebAssembly/spec/tree/master/test> and
> additional JavaScript tests
> <https://cs.chromium.org/chromium/src/v8/test/mjsunit/wasm/multi-value.js>.
>
>
> Entry on the feature dashboard <http://www.chromestatus.com/>
>
> https://chromestatus.com/features/5192420329259008
>
>
> *Requesting approval to ship?*
> Yes.
>
> --
> You received this message because you are subscribed to the Google
> Groups "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to blink-dev+...@chromium.org
> <mailto:blink-dev+...@chromium.org>.
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALowwNZ7C_F183%2Bb1QVuNuCfJnmBAJyz7Rh2RegZ9W1dq%2BsEWA%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to blink-dev+...@chromium.org
> <mailto:blink-dev+...@chromium.org>.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEjdj_GeaW3Lcf2MM9sCAER%3D8R-TzYyt-oGt36AyTz4syg%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEjdj_GeaW3Lcf2MM9sCAER%3D8R-TzYyt-oGt36AyTz4syg%40mail.gmail.com?utm_medium=email&utm_source=footer>.
pEpkey.asc

Chris Harrelson

unread,
Jun 19, 2020, 12:43:47 PM6/19/20
to Manuel Rego Casasnovas, Yoav Weiss, Thibaud Michaud, blink-dev, v8-users
LGTM3

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/a4523859-b463-f8b8-a1e4-9e3212080e45%40igalia.com.
Reply all
Reply to author
Forward
0 new messages