Changeset 288049 in webkit


Ignore:
Timestamp:
Jan 14, 2022 7:11:42 PM (6 months ago)
Author:
ysuzuki@apple.com
Message:

[JSC] Fix WebAssembly.Global's typename for "anyfunc"
https://bugs.webkit.org/show_bug.cgi?id=235105

Reviewed by Keith Miller.

LayoutTests/imported/w3c:

Update wpt/wasm which includes "anyfunc" tests.

  • web-platform-tests/wasm/jsapi/assertions.js:

(assert_exported_function):

  • web-platform-tests/wasm/jsapi/constructor/toStringTag.any.js:
  • web-platform-tests/wasm/jsapi/exception/basic.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/basic.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/exception/basic.tentative.any.js: Added.

(assert_throws_wasm):
(promise_test.async const):
(promise_test):

  • web-platform-tests/wasm/jsapi/exception/basic.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/basic.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/exception/constructor.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.js: Added.

(test):

  • web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/exception/getArg.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.js: Added.

(test):

  • web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/exception/is.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/is.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/exception/is.tentative.any.js: Added.

(test):

  • web-platform-tests/wasm/jsapi/exception/is.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/is.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/exception/toString.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/toString.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/exception/toString.tentative.any.js: Added.

(test):

  • web-platform-tests/wasm/jsapi/exception/toString.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/toString.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/exception/type.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/type.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/exception/type.tentative.any.js: Added.

(assert_type):
(test):

  • web-platform-tests/wasm/jsapi/exception/type.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/exception/type.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/exception/w3c-import.log: Added.
  • web-platform-tests/wasm/jsapi/function/call.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/call.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/function/call.tentative.any.js: Added.

(addxy):
(test):
(string_appeared_here.test):

  • web-platform-tests/wasm/jsapi/function/call.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/call.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/function/constructor.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/constructor.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/function/constructor.tentative.any.js: Added.

(addxy):
(test):
(string_appeared_here.test):

  • web-platform-tests/wasm/jsapi/function/constructor.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/constructor.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/function/table.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/table.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/function/table.tentative.any.js: Added.

(testfunc):
(test):

  • web-platform-tests/wasm/jsapi/function/table.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/table.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/function/type.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/type.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/function/type.tentative.any.js: Added.

(addNumbers):
(doNothing):
(assert_function):
(test):
(string_appeared_here.test):

  • web-platform-tests/wasm/jsapi/function/type.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/function/type.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/function/w3c-import.log: Added.
  • web-platform-tests/wasm/jsapi/global/type.tentative.any-expected.txt:
  • web-platform-tests/wasm/jsapi/global/type.tentative.any.js:

(test):
(string_appeared_here.test):

  • web-platform-tests/wasm/jsapi/global/type.tentative.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/proto-from-ctor-realm.html:
  • web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any.js: Removed.
  • web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/constructor.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/constructor.any.js:

(test.get assert_array_equals):
(test):

  • web-platform-tests/wasm/jsapi/table/constructor.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/get-set.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/get-set.any.js:

(test):

  • web-platform-tests/wasm/jsapi/table/get-set.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any.js: Removed.
  • web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/grow.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/grow.any.js:

(test):

  • web-platform-tests/wasm/jsapi/table/grow.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any.js: Removed.
  • web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/type.tentative.any-expected.txt:
  • web-platform-tests/wasm/jsapi/table/type.tentative.any.js:

(test):

  • web-platform-tests/wasm/jsapi/table/type.tentative.any.worker-expected.txt:
  • web-platform-tests/wasm/jsapi/table/type.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/table/w3c-import.log:
  • web-platform-tests/wasm/jsapi/tag/constructor.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.js: Added.

(test):

  • web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/tag/toString.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/tag/toString.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/tag/toString.tentative.any.js: Added.

(test):

  • web-platform-tests/wasm/jsapi/tag/toString.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/tag/toString.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/tag/type.tentative.any-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/tag/type.tentative.any.html: Added.
  • web-platform-tests/wasm/jsapi/tag/type.tentative.any.js: Added.

(assert_type):
(test):

  • web-platform-tests/wasm/jsapi/tag/type.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/wasm/jsapi/tag/type.tentative.any.worker.html: Added.
  • web-platform-tests/wasm/jsapi/tag/w3c-import.log: Added.
  • web-platform-tests/wasm/jsapi/wasm-module-builder.js:

(WasmModuleBuilder.prototype.addTable):
(WasmModuleBuilder.prototype.toBuffer):

  • web-platform-tests/wasm/serialization/module/cross-origin-module-sharing-fails-expected.txt: Added.
  • web-platform-tests/wasm/serialization/module/cross-origin-module-sharing-fails.html: Added.
  • web-platform-tests/wasm/serialization/module/resources/incrementer-iframe-failure.html: Added.
  • web-platform-tests/wasm/serialization/module/resources/w3c-import.log:
  • web-platform-tests/wasm/serialization/module/share-module-cross-origin-fails.sub-expected.txt: Added.
  • web-platform-tests/wasm/serialization/module/share-module-cross-origin-fails.sub.html: Added.
  • web-platform-tests/wasm/serialization/module/w3c-import.log:
  • web-platform-tests/wasm/webapi/contenttype.any-expected.txt:
  • web-platform-tests/wasm/webapi/contenttype.any.js:
  • web-platform-tests/wasm/webapi/contenttype.any.worker-expected.txt:
  • web-platform-tests/wasm/webapi/resources/incrementer.no_mime_type.wasm: Added.
  • web-platform-tests/wasm/webapi/resources/incrementer.wasm: Added.
  • web-platform-tests/wasm/webapi/resources/incrementer.wasm.headers: Added.
  • web-platform-tests/wasm/webapi/resources/incrementer.wrong_mime_type.wasm: Added.
  • web-platform-tests/wasm/webapi/resources/incrementer.wrong_mime_type.wasm.headers: Added.
  • web-platform-tests/wasm/webapi/resources/w3c-import.log: Added.
  • web-platform-tests/wasm/webapi/w3c-import.log:
  • web-platform-tests/wasm/webapi/wasm_stream_compile_test-expected.txt: Added.
  • web-platform-tests/wasm/webapi/wasm_stream_compile_test.html: Added.
  • web-platform-tests/wasm/webapi/wasm_stream_instantiate_test-expected.txt: Added.
  • web-platform-tests/wasm/webapi/wasm_stream_instantiate_test.html: Added.

Source/JavaScriptCore:

We should return "anyfunc" string instead of "funcref" according to the spec[1,2].

[1]: https://webassembly.github.io/spec/js-api/#globals
[2]: https://webassembly.github.io/spec/js-api/#tables

  • wasm/js/JSWebAssemblyGlobal.cpp:

(JSC::JSWebAssemblyGlobal::type):

  • wasm/js/JSWebAssemblyTable.cpp:

(JSC::JSWebAssemblyTable::type):

Location:
trunk
Files:
61 added
9 deleted
31 edited
21 copied
6 moved

Legend:

Unmodified
Added
Removed
  • trunk/JSTests/wasm/js-api/table.js

    r275438 r288049  
    401401    assert.eq(Object.keys(t0).length, 2);
    402402    assert.eq(t0.minimum, 5);
    403     assert.eq(t0.element, "funcref");
     403    assert.eq(t0.element, "anyfunc");
    404404
    405405    const t1 = new WebAssembly.Table({minimum: 5, maximum: 10, element: "funcref"}).type();
     
    407407    assert.eq(t1.minimum, 5);
    408408    assert.eq(t1.maximum, 10)
    409     assert.eq(t1.element, "funcref");
     409    assert.eq(t1.element, "anyfunc");
    410410
    411411    const t2 = new WebAssembly.Table({minimum: 5, maximum: 10, element: "externref"}).type();
  • trunk/LayoutTests/imported/w3c/ChangeLog

    r288024 r288049  
     12022-01-14  Yusuke Suzuki  <ysuzuki@apple.com>
     2
     3        [JSC] Fix WebAssembly.Global's typename for "anyfunc"
     4        https://bugs.webkit.org/show_bug.cgi?id=235105
     5
     6        Reviewed by Keith Miller.
     7
     8        Update wpt/wasm which includes "anyfunc" tests.
     9
     10        * web-platform-tests/wasm/jsapi/assertions.js:
     11        (assert_exported_function):
     12        * web-platform-tests/wasm/jsapi/constructor/toStringTag.any.js:
     13        * web-platform-tests/wasm/jsapi/exception/basic.tentative.any-expected.txt: Added.
     14        * web-platform-tests/wasm/jsapi/exception/basic.tentative.any.html: Added.
     15        * web-platform-tests/wasm/jsapi/exception/basic.tentative.any.js: Added.
     16        (assert_throws_wasm):
     17        (promise_test.async const):
     18        (promise_test):
     19        * web-platform-tests/wasm/jsapi/exception/basic.tentative.any.worker-expected.txt: Added.
     20        * web-platform-tests/wasm/jsapi/exception/basic.tentative.any.worker.html: Added.
     21        * web-platform-tests/wasm/jsapi/exception/constructor.tentative.any-expected.txt: Added.
     22        * web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.html: Added.
     23        * web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.js: Added.
     24        (test):
     25        * web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.worker-expected.txt: Added.
     26        * web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.worker.html: Added.
     27        * web-platform-tests/wasm/jsapi/exception/getArg.tentative.any-expected.txt: Added.
     28        * web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.html: Added.
     29        * web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.js: Added.
     30        (test):
     31        * web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.worker-expected.txt: Added.
     32        * web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.worker.html: Added.
     33        * web-platform-tests/wasm/jsapi/exception/is.tentative.any-expected.txt: Added.
     34        * web-platform-tests/wasm/jsapi/exception/is.tentative.any.html: Added.
     35        * web-platform-tests/wasm/jsapi/exception/is.tentative.any.js: Added.
     36        (test):
     37        * web-platform-tests/wasm/jsapi/exception/is.tentative.any.worker-expected.txt: Added.
     38        * web-platform-tests/wasm/jsapi/exception/is.tentative.any.worker.html: Added.
     39        * web-platform-tests/wasm/jsapi/exception/toString.tentative.any-expected.txt: Added.
     40        * web-platform-tests/wasm/jsapi/exception/toString.tentative.any.html: Added.
     41        * web-platform-tests/wasm/jsapi/exception/toString.tentative.any.js: Added.
     42        (test):
     43        * web-platform-tests/wasm/jsapi/exception/toString.tentative.any.worker-expected.txt: Added.
     44        * web-platform-tests/wasm/jsapi/exception/toString.tentative.any.worker.html: Added.
     45        * web-platform-tests/wasm/jsapi/exception/type.tentative.any-expected.txt: Added.
     46        * web-platform-tests/wasm/jsapi/exception/type.tentative.any.html: Added.
     47        * web-platform-tests/wasm/jsapi/exception/type.tentative.any.js: Added.
     48        (assert_type):
     49        (test):
     50        * web-platform-tests/wasm/jsapi/exception/type.tentative.any.worker-expected.txt: Added.
     51        * web-platform-tests/wasm/jsapi/exception/type.tentative.any.worker.html: Added.
     52        * web-platform-tests/wasm/jsapi/exception/w3c-import.log: Added.
     53        * web-platform-tests/wasm/jsapi/function/call.tentative.any-expected.txt: Added.
     54        * web-platform-tests/wasm/jsapi/function/call.tentative.any.html: Added.
     55        * web-platform-tests/wasm/jsapi/function/call.tentative.any.js: Added.
     56        (addxy):
     57        (test):
     58        (string_appeared_here.test):
     59        * web-platform-tests/wasm/jsapi/function/call.tentative.any.worker-expected.txt: Added.
     60        * web-platform-tests/wasm/jsapi/function/call.tentative.any.worker.html: Added.
     61        * web-platform-tests/wasm/jsapi/function/constructor.tentative.any-expected.txt: Added.
     62        * web-platform-tests/wasm/jsapi/function/constructor.tentative.any.html: Added.
     63        * web-platform-tests/wasm/jsapi/function/constructor.tentative.any.js: Added.
     64        (addxy):
     65        (test):
     66        (string_appeared_here.test):
     67        * web-platform-tests/wasm/jsapi/function/constructor.tentative.any.worker-expected.txt: Added.
     68        * web-platform-tests/wasm/jsapi/function/constructor.tentative.any.worker.html: Added.
     69        * web-platform-tests/wasm/jsapi/function/table.tentative.any-expected.txt: Added.
     70        * web-platform-tests/wasm/jsapi/function/table.tentative.any.html: Added.
     71        * web-platform-tests/wasm/jsapi/function/table.tentative.any.js: Added.
     72        (testfunc):
     73        (test):
     74        * web-platform-tests/wasm/jsapi/function/table.tentative.any.worker-expected.txt: Added.
     75        * web-platform-tests/wasm/jsapi/function/table.tentative.any.worker.html: Added.
     76        * web-platform-tests/wasm/jsapi/function/type.tentative.any-expected.txt: Added.
     77        * web-platform-tests/wasm/jsapi/function/type.tentative.any.html: Added.
     78        * web-platform-tests/wasm/jsapi/function/type.tentative.any.js: Added.
     79        (addNumbers):
     80        (doNothing):
     81        (assert_function):
     82        (test):
     83        (string_appeared_here.test):
     84        * web-platform-tests/wasm/jsapi/function/type.tentative.any.worker-expected.txt: Added.
     85        * web-platform-tests/wasm/jsapi/function/type.tentative.any.worker.html: Added.
     86        * web-platform-tests/wasm/jsapi/function/w3c-import.log: Added.
     87        * web-platform-tests/wasm/jsapi/global/type.tentative.any-expected.txt:
     88        * web-platform-tests/wasm/jsapi/global/type.tentative.any.js:
     89        (test):
     90        (string_appeared_here.test):
     91        * web-platform-tests/wasm/jsapi/global/type.tentative.any.worker-expected.txt:
     92        * web-platform-tests/wasm/jsapi/proto-from-ctor-realm.html:
     93        * web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any-expected.txt:
     94        * web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any.js: Removed.
     95        * web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any.worker-expected.txt:
     96        * web-platform-tests/wasm/jsapi/table/constructor.any-expected.txt:
     97        * web-platform-tests/wasm/jsapi/table/constructor.any.js:
     98        (test.get assert_array_equals):
     99        (test):
     100        * web-platform-tests/wasm/jsapi/table/constructor.any.worker-expected.txt:
     101        * web-platform-tests/wasm/jsapi/table/get-set.any-expected.txt:
     102        * web-platform-tests/wasm/jsapi/table/get-set.any.js:
     103        (test):
     104        * web-platform-tests/wasm/jsapi/table/get-set.any.worker-expected.txt:
     105        * web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any-expected.txt:
     106        * web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any.js: Removed.
     107        * web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any.worker-expected.txt:
     108        * web-platform-tests/wasm/jsapi/table/grow.any-expected.txt:
     109        * web-platform-tests/wasm/jsapi/table/grow.any.js:
     110        (test):
     111        * web-platform-tests/wasm/jsapi/table/grow.any.worker-expected.txt:
     112        * web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any-expected.txt:
     113        * web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any.js: Removed.
     114        * web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any.worker-expected.txt:
     115        * web-platform-tests/wasm/jsapi/table/type.tentative.any-expected.txt:
     116        * web-platform-tests/wasm/jsapi/table/type.tentative.any.js:
     117        (test):
     118        * web-platform-tests/wasm/jsapi/table/type.tentative.any.worker-expected.txt:
     119        * web-platform-tests/wasm/jsapi/table/type.tentative.any.worker.html: Added.
     120        * web-platform-tests/wasm/jsapi/table/w3c-import.log:
     121        * web-platform-tests/wasm/jsapi/tag/constructor.tentative.any-expected.txt: Added.
     122        * web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.html: Added.
     123        * web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.js: Added.
     124        (test):
     125        * web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.worker-expected.txt: Added.
     126        * web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.worker.html: Added.
     127        * web-platform-tests/wasm/jsapi/tag/toString.tentative.any-expected.txt: Added.
     128        * web-platform-tests/wasm/jsapi/tag/toString.tentative.any.html: Added.
     129        * web-platform-tests/wasm/jsapi/tag/toString.tentative.any.js: Added.
     130        (test):
     131        * web-platform-tests/wasm/jsapi/tag/toString.tentative.any.worker-expected.txt: Added.
     132        * web-platform-tests/wasm/jsapi/tag/toString.tentative.any.worker.html: Added.
     133        * web-platform-tests/wasm/jsapi/tag/type.tentative.any-expected.txt: Added.
     134        * web-platform-tests/wasm/jsapi/tag/type.tentative.any.html: Added.
     135        * web-platform-tests/wasm/jsapi/tag/type.tentative.any.js: Added.
     136        (assert_type):
     137        (test):
     138        * web-platform-tests/wasm/jsapi/tag/type.tentative.any.worker-expected.txt: Added.
     139        * web-platform-tests/wasm/jsapi/tag/type.tentative.any.worker.html: Added.
     140        * web-platform-tests/wasm/jsapi/tag/w3c-import.log: Added.
     141        * web-platform-tests/wasm/jsapi/wasm-module-builder.js:
     142        (WasmModuleBuilder.prototype.addTable):
     143        (WasmModuleBuilder.prototype.toBuffer):
     144        * web-platform-tests/wasm/serialization/module/cross-origin-module-sharing-fails-expected.txt: Added.
     145        * web-platform-tests/wasm/serialization/module/cross-origin-module-sharing-fails.html: Added.
     146        * web-platform-tests/wasm/serialization/module/resources/incrementer-iframe-failure.html: Added.
     147        * web-platform-tests/wasm/serialization/module/resources/w3c-import.log:
     148        * web-platform-tests/wasm/serialization/module/share-module-cross-origin-fails.sub-expected.txt: Added.
     149        * web-platform-tests/wasm/serialization/module/share-module-cross-origin-fails.sub.html: Added.
     150        * web-platform-tests/wasm/serialization/module/w3c-import.log:
     151        * web-platform-tests/wasm/webapi/contenttype.any-expected.txt:
     152        * web-platform-tests/wasm/webapi/contenttype.any.js:
     153        * web-platform-tests/wasm/webapi/contenttype.any.worker-expected.txt:
     154        * web-platform-tests/wasm/webapi/resources/incrementer.no_mime_type.wasm: Added.
     155        * web-platform-tests/wasm/webapi/resources/incrementer.wasm: Added.
     156        * web-platform-tests/wasm/webapi/resources/incrementer.wasm.headers: Added.
     157        * web-platform-tests/wasm/webapi/resources/incrementer.wrong_mime_type.wasm: Added.
     158        * web-platform-tests/wasm/webapi/resources/incrementer.wrong_mime_type.wasm.headers: Added.
     159        * web-platform-tests/wasm/webapi/resources/w3c-import.log: Added.
     160        * web-platform-tests/wasm/webapi/w3c-import.log:
     161        * web-platform-tests/wasm/webapi/wasm_stream_compile_test-expected.txt: Added.
     162        * web-platform-tests/wasm/webapi/wasm_stream_compile_test.html: Added.
     163        * web-platform-tests/wasm/webapi/wasm_stream_instantiate_test-expected.txt: Added.
     164        * web-platform-tests/wasm/webapi/wasm_stream_instantiate_test.html: Added.
     165
    11662022-01-14  Chris Dumez  <cdumez@apple.com>
    2167
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/assertions.js

    r260690 r288049  
    1818
    1919function assert_exported_function(fn, { name, length }, description) {
    20   assert_equals(Object.getPrototypeOf(fn), Function.prototype,
    21                 `${description}: prototype`);
     20  if (WebAssembly.Function === undefined) {
     21    assert_equals(Object.getPrototypeOf(fn), Function.prototype,
     22                  `${description}: prototype`);
     23  } else {
     24    assert_equals(Object.getPrototypeOf(fn), WebAssembly.Function.prototype,
     25                  `${description}: prototype`);
     26  }
    2227
    2328  assert_function_name(fn, name, description);
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/toStringTag.any.js

    r269866 r288049  
    22
    33"use strict";
    4 // https://heycam.github.io/webidl/#es-namespaces
     4// https://webidl.spec.whatwg.org/#es-namespaces
    55// https://webassembly.github.io/spec/js-api/#namespacedef-webassembly
    66
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/type.tentative.any-expected.txt

    r275438 r288049  
    88PASS f64, mutable
    99PASS f64, immutable
    10 PASS anyref, mutable
    11 PASS anyref, immutable
    12 PASS funcref, mutable
    13 PASS funcref, immutable
     10PASS externref, mutable
     11PASS externref, immutable
     12PASS anyfunc, mutable
     13PASS anyfunc, immutable
    1414PASS key ordering
    1515
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/type.tentative.any.js

    r275438 r288049  
    4444test(() => {
    4545    assert_type({"value": "externref", "mutable": true})
    46 }, "anyref, mutable")
     46}, "externref, mutable")
    4747
    4848test(() => {
    4949    assert_type({"value": "externref", "mutable": false})
    50 }, "anyref, immutable")
     50}, "externref, immutable")
    5151
    5252test(() => {
    53     assert_type({"value": "funcref", "mutable": true})
    54 }, "funcref, mutable")
     53    assert_type({"value": "anyfunc", "mutable": true})
     54}, "anyfunc, mutable")
    5555
    5656test(() => {
    57     assert_type({"value": "funcref", "mutable": false})
    58 }, "funcref, immutable")
     57    assert_type({"value": "anyfunc", "mutable": false})
     58}, "anyfunc, immutable")
    5959
    6060test(() => {
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/type.tentative.any.worker-expected.txt

    r275438 r288049  
    88PASS f64, mutable
    99PASS f64, immutable
    10 PASS anyref, mutable
    11 PASS anyref, immutable
    12 PASS funcref, mutable
    13 PASS funcref, immutable
     10PASS externref, mutable
     11PASS externref, immutable
     12PASS anyfunc, mutable
     13PASS anyfunc, immutable
    1414PASS key ordering
    1515
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/proto-from-ctor-realm.html

    r260690 r288049  
    22<meta charset="utf-8">
    33<title>WebAssembly JS API: Default [[Prototype]] value is from NewTarget's Realm</title>
    4 <link rel="help" href="https://heycam.github.io/webidl/#internally-create-a-new-object-implementing-the-interface">
     4<link rel="help" href="https://webidl.spec.whatwg.org/#internally-create-a-new-object-implementing-the-interface">
    55<link rel="help" href="https://tc39.es/ecma262/#sec-nativeerror">
    66<script src="/resources/testharness.js"></script>
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor.any-expected.txt

    r272074 r288049  
    2727PASS Type conversion for descriptor.element
    2828PASS Order of evaluation for descriptor
     29PASS initialize externref table with default value
     30PASS initialize table with a wrong element value
     31PASS initialize anyfunc table with default value
     32PASS initialize anyfunc table with a bad default value
    2933
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor.any.js

    r269866 r288049  
    11// META: global=window,dedicatedworker,jsshell
     2// META: script=/wasm/jsapi/wasm-module-builder.js
    23// META: script=/wasm/jsapi/assertions.js
    34// META: script=/wasm/jsapi/table/assertions.js
     
    168169  ]);
    169170}, "Order of evaluation for descriptor");
     171
     172test(() => {
     173  const testObject = {};
     174  const argument = { "element": "externref", "initial": 3 };
     175  const table = new WebAssembly.Table(argument, testObject);
     176  assert_equals(table.length, 3);
     177  assert_equals(table.get(0), testObject);
     178  assert_equals(table.get(1), testObject);
     179  assert_equals(table.get(2), testObject);
     180}, "initialize externref table with default value");
     181
     182test(() => {
     183  const argument = { "element": "i32", "initial": 3 };
     184  assert_throws_js(TypeError, () => new WebAssembly.Table(argument));
     185}, "initialize table with a wrong element value");
     186
     187test(() => {
     188  const builder = new WasmModuleBuilder();
     189  builder
     190    .addFunction("fn", kSig_v_v)
     191    .addBody([])
     192    .exportFunc();
     193  const bin = builder.toBuffer();
     194  const fn = new WebAssembly.Instance(new WebAssembly.Module(bin)).exports.fn;
     195  const argument = { "element": "anyfunc", "initial": 3 };
     196  const table = new WebAssembly.Table(argument, fn);
     197  assert_equals(table.length, 3);
     198  assert_equals(table.get(0), fn);
     199  assert_equals(table.get(1), fn);
     200  assert_equals(table.get(2), fn);
     201}, "initialize anyfunc table with default value");
     202
     203test(() => {
     204  const argument = { "element": "anyfunc", "initial": 3 };
     205  assert_throws_js(TypeError, () => new WebAssembly.Table(argument, {}));
     206  assert_throws_js(TypeError, () => new WebAssembly.Table(argument, "cannot be used as a wasm function"));
     207  assert_throws_js(TypeError, () => new WebAssembly.Table(argument, 37));
     208}, "initialize anyfunc table with a bad default value");
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor.any.worker-expected.txt

    r272074 r288049  
    2727PASS Type conversion for descriptor.element
    2828PASS Order of evaluation for descriptor
     29PASS initialize externref table with default value
     30PASS initialize table with a wrong element value
     31PASS initialize anyfunc table with default value
     32PASS initialize anyfunc table with a bad default value
    2933
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/get-set.any-expected.txt

    r272074 r288049  
    22PASS Missing arguments: get
    33PASS Branding: get
    4 FAIL Missing arguments: set assert_throws_js: function "() => table.set(0)" did not throw
     4PASS Missing arguments: set
    55PASS Branding: set
    66PASS Basic
     
    3030PASS Order of argument conversion
    3131PASS Stray argument
     32PASS Arguments for anyfunc table set
     33PASS Arguments for externref table set
    3234
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/get-set.any.js

    r262312 r288049  
    5757  const table = new WebAssembly.Table(argument);
    5858  assert_throws_js(TypeError, () => table.set());
    59   assert_throws_js(TypeError, () => table.set(0));
    6059}, "Missing arguments: set");
    6160
     
    224223  assert_equals(table.set(0, fn, {}), undefined);
    225224}, "Stray argument");
     225
     226test(() => {
     227  const builder = new WasmModuleBuilder();
     228  builder
     229    .addFunction("fn", kSig_v_v)
     230    .addBody([])
     231    .exportFunc();
     232  const bin = builder.toBuffer();
     233  const fn = new WebAssembly.Instance(new WebAssembly.Module(bin)).exports.fn;
     234
     235  const argument = { "element": "anyfunc", "initial": 1 };
     236  const table = new WebAssembly.Table(argument, fn);
     237
     238  assert_equals(table.get(0), fn);
     239  table.set(0);
     240  assert_equals(table.get(0), null);
     241
     242  table.set(0, fn);
     243  assert_equals(table.get(0), fn);
     244
     245  assert_throws_js(TypeError, () => table.set(0, {}));
     246  assert_throws_js(TypeError, () => table.set(0, 37));
     247}, "Arguments for anyfunc table set");
     248
     249test(() => {
     250  const testObject = {};
     251  const argument = { "element": "externref", "initial": 1 };
     252  const table = new WebAssembly.Table(argument, testObject);
     253
     254  assert_equals(table.get(0), testObject);
     255  table.set(0);
     256  assert_equals(table.get(0), undefined);
     257
     258  table.set(0, testObject);
     259  assert_equals(table.get(0), testObject);
     260
     261  table.set(0, 37);
     262  assert_equals(table.get(0), 37);
     263}, "Arguments for externref table set");
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/get-set.any.worker-expected.txt

    r272074 r288049  
    22PASS Missing arguments: get
    33PASS Branding: get
    4 FAIL Missing arguments: set assert_throws_js: function "() => table.set(0)" did not throw
     4PASS Missing arguments: set
    55PASS Branding: set
    66PASS Basic
     
    3030PASS Order of argument conversion
    3131PASS Stray argument
     32PASS Arguments for anyfunc table set
     33PASS Arguments for externref table set
    3234
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/grow.any-expected.txt

    r267649 r288049  
    1515PASS Out-of-range argument: object "[object Object]"
    1616PASS Stray argument
     17PASS Grow with exported-function argument
     18PASS Grow with non-function argument
     19PASS Grow with JS-function argument
    1720
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/grow.any.js

    r262312 r288049  
    11// META: global=window,dedicatedworker,jsshell
     2// META: script=/wasm/jsapi/wasm-module-builder.js
    23// META: script=assertions.js
    34
     
    9596  assert_equal_to_array(table, nulls(8), "after");
    9697}, "Stray argument");
     98
     99test(() => {
     100  const builder = new WasmModuleBuilder();
     101  builder
     102    .addFunction("fn", kSig_v_v)
     103    .addBody([])
     104    .exportFunc();
     105  const bin = builder.toBuffer()
     106  const argument = { "element": "anyfunc", "initial": 1 };
     107  const table = new WebAssembly.Table(argument);
     108  const fn = new WebAssembly.Instance(new WebAssembly.Module(bin)).exports.fn;
     109  const result = table.grow(2, fn);
     110  assert_equals(result, 1);
     111  assert_equals(table.get(0), null);
     112  assert_equals(table.get(1), fn);
     113  assert_equals(table.get(2), fn);
     114}, "Grow with exported-function argument");
     115
     116test(() => {
     117  const argument = { "element": "anyfunc", "initial": 1 };
     118  const table = new WebAssembly.Table(argument);
     119  assert_throws_js(TypeError, () => table.grow(2, {}));
     120}, "Grow with non-function argument");
     121
     122test(() => {
     123  const argument = { "element": "anyfunc", "initial": 1 };
     124  const table = new WebAssembly.Table(argument);
     125  assert_throws_js(TypeError, () => table.grow(2, () => true));
     126}, "Grow with JS-function argument");
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/grow.any.worker-expected.txt

    r267649 r288049  
    1515PASS Out-of-range argument: object "[object Object]"
    1616PASS Stray argument
     17PASS Grow with exported-function argument
     18PASS Grow with non-function argument
     19PASS Grow with JS-function argument
    1720
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/type.tentative.any-expected.txt

    r275438 r288049  
    33PASS Non-zero initial, no maximum
    44PASS Zero maximum
    5 PASS None-zero maximum
     5PASS Non-zero maximum
    66
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/type.tentative.any.js

    r275438 r288049  
    1111
    1212test(() => {
    13     assert_type({ "minimum": 0, "element": "funcref"});
     13    assert_type({ "minimum": 0, "element": "anyfunc"});
    1414}, "Zero initial, no maximum");
    1515
    1616test(() => {
    17     assert_type({ "minimum": 5, "element": "funcref" });
     17    assert_type({ "minimum": 5, "element": "anyfunc" });
    1818}, "Non-zero initial, no maximum");
    1919
    2020test(() => {
    21     assert_type({ "minimum": 0, "maximum": 0, "element": "funcref" });
     21    assert_type({ "minimum": 0, "maximum": 0, "element": "anyfunc" });
    2222}, "Zero maximum");
    2323
    2424test(() => {
    25     assert_type({ "minimum": 0, "maximum": 5, "element": "funcref" });
    26 }, "None-zero maximum");
     25    assert_type({ "minimum": 0, "maximum": 5, "element": "anyfunc" });
     26}, "Non-zero maximum");
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/type.tentative.any.worker-expected.txt

    r275438 r288049  
    33PASS Non-zero initial, no maximum
    44PASS Zero maximum
    5 PASS None-zero maximum
     5PASS Non-zero maximum
    66
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/w3c-import.log

    r271774 r288049  
    1616List of files:
    1717/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/assertions.js
    18 /LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor-reftypes.tentative.any.js
    1918/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor-types.tentative.any.js
    2019/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor.any.js
    2120/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/get-set.any.js
    22 /LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/grow-reftypes.tentative.any.js
    2321/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/grow.any.js
    2422/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/length.any.js
    25 /LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/set-reftypes.tentative.any.js
    2623/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/toString.any.js
     24/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/type.tentative.any.js
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/wasm-module-builder.js

    r269866 r288049  
    100100let kWasmAnyRef = 0x6f;
    101101let kWasmAnyFunc = 0x70;
    102 let kWasmExnRef = 0x68;
    103102
    104103let kExternalFunction = 0;
     
    150149let kSig_r_r = makeSig([kWasmAnyRef], [kWasmAnyRef]);
    151150let kSig_a_a = makeSig([kWasmAnyFunc], [kWasmAnyFunc]);
    152 let kSig_e_e = makeSig([kWasmExnRef], [kWasmExnRef]);
    153151let kSig_i_r = makeSig([kWasmAnyRef], [kWasmI32]);
    154152let kSig_v_r = makeSig([kWasmAnyRef], []);
    155153let kSig_v_a = makeSig([kWasmAnyFunc], []);
    156 let kSig_v_e = makeSig([kWasmExnRef], []);
    157154let kSig_v_rr = makeSig([kWasmAnyRef, kWasmAnyRef], []);
    158155let kSig_v_aa = makeSig([kWasmAnyFunc, kWasmAnyFunc], []);
     
    160157let kSig_a_v = makeSig([], [kWasmAnyFunc]);
    161158let kSig_a_i = makeSig([kWasmI32], [kWasmAnyFunc]);
    162 let kSig_e_v = makeSig([], [kWasmExnRef]);
    163159
    164160function makeSig(params, results) {
     
    195191let kExprTry = 0x06;
    196192let kExprCatch = 0x07;
     193let kExprCatchAll = 0x19;
    197194let kExprThrow = 0x08;
    198195let kExprRethrow = 0x09;
     
    747744
    748745  addTable(type, initial_size, max_size = undefined) {
    749     if (type != kWasmAnyRef && type != kWasmAnyFunc && type != kWasmExnRef) {
    750       throw new Error(
    751           'Tables must be of type kWasmAnyRef, kWasmAnyFunc, or kWasmExnRef');
     746    if (type != kWasmAnyRef && type != kWasmAnyFunc) {
     747      throw new Error('Tables must be of type kWasmAnyRef or kWasmAnyFunc');
    752748    }
    753749    let table = new WasmTableBuilder(this, type, initial_size, max_size);
     
    10301026              }
    10311027              break;
    1032             case kWasmExnRef:
    1033               section.emit_u8(kExprRefNull);
    1034               break;
    10351028            }
    10361029          } else {
     
    11731166            if (l.anyfunc_count > 0) {
    11741167              local_decls.push({count: l.anyfunc_count, type: kWasmAnyFunc});
    1175             }
    1176             if (l.except_count > 0) {
    1177               local_decls.push({count: l.except_count, type: kWasmExnRef});
    11781168            }
    11791169          }
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/resources/w3c-import.log

    r269866 r288049  
    2323/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/resources/echo-worker.js
    2424/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/resources/incrementer-iframe-domain.sub.html
     25/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/resources/incrementer-iframe-failure.html
    2526/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/resources/incrementer-iframe.html
    2627/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/resources/incrementer-popup.html
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/w3c-import.log

    r269866 r288049  
    1717/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/broadcastchannel-success-and-failure.html
    1818/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/broadcastchannel-success.html
     19/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/cross-origin-module-sharing-fails.html
    1920/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/identity-not-preserved.html
    2021/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/incrementer.wasm
     
    2425/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/serialization-via-idb.any.js
    2526/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/serialization-via-notifications-api.any.js
     27/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/share-module-cross-origin-fails.sub.html
    2628/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/window-domain-success.sub.html
    2729/LayoutTests/imported/w3c/web-platform-tests/wasm/serialization/module/window-messagechannel-success.html
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/contenttype.any-expected.txt

    r271993 r288049  
    11
     2PASS Response with no Content-Type: compileStreaming
     3PASS Response with no Content-Type: instantiateStreaming
    24PASS Response with Content-Type "": compileStreaming
    35PASS Response with Content-Type "": instantiateStreaming
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/contenttype.any.js

    r269866 r288049  
    11// META: global=window,worker
    22// META: script=/wasm/jsapi/assertions.js
     3
     4promise_test(t => {
     5  const response = fetch("/wasm/incrementer.wasm").then(res => new Response(res.body));
     6  return promise_rejects_js(t, TypeError, WebAssembly.compileStreaming(response));
     7}, "Response with no Content-Type: compileStreaming");
     8
     9promise_test(t => {
     10  const response = fetch("/wasm/incrementer.wasm").then(res => new Response(res.body));
     11  return promise_rejects_js(t, TypeError, WebAssembly.instantiateStreaming(response));
     12}, "Response with no Content-Type: instantiateStreaming");
    313
    414const invalidContentTypes = [
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/contenttype.any.worker-expected.txt

    r271993 r288049  
    11
     2PASS Response with no Content-Type: compileStreaming
     3PASS Response with no Content-Type: instantiateStreaming
    24PASS Response with Content-Type "": compileStreaming
    35PASS Response with Content-Type "": instantiateStreaming
  • trunk/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/w3c-import.log

    r271774 r288049  
    3131/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/status.any.js
    3232/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/status.py
     33/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/wasm_stream_compile_test.html
     34/LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/wasm_stream_instantiate_test.html
  • trunk/Source/JavaScriptCore/ChangeLog

    r288037 r288049  
     12022-01-14  Yusuke Suzuki  <ysuzuki@apple.com>
     2
     3        [JSC] Fix WebAssembly.Global's typename for "anyfunc"
     4        https://bugs.webkit.org/show_bug.cgi?id=235105
     5
     6        Reviewed by Keith Miller.
     7
     8        We should return "anyfunc" string instead of "funcref" according to the spec[1,2].
     9
     10        [1]: https://webassembly.github.io/spec/js-api/#globals
     11        [2]: https://webassembly.github.io/spec/js-api/#tables
     12
     13        * wasm/js/JSWebAssemblyGlobal.cpp:
     14        (JSC::JSWebAssemblyGlobal::type):
     15        * wasm/js/JSWebAssemblyTable.cpp:
     16        (JSC::JSWebAssemblyTable::type):
     17
    1182022-01-14  Mark Lam  <mark.lam@apple.com>
    219
  • trunk/Source/JavaScriptCore/wasm/js/JSWebAssemblyGlobal.cpp

    r285730 r288049  
    108108    default: {
    109109        if (Wasm::isFuncref(valueType))
    110             valueString = jsNontrivialString(vm, "funcref");
     110            valueString = jsNontrivialString(vm, "anyfunc");
    111111        else if (Wasm::isExternref(valueType))
    112112            valueString = jsNontrivialString(vm, "externref");
  • trunk/Source/JavaScriptCore/wasm/js/JSWebAssemblyTable.cpp

    r285730 r288049  
    128128    switch (element) {
    129129    case Wasm::TableElementType::Funcref:
    130         elementString = jsNontrivialString(vm, "funcref");
     130        elementString = jsNontrivialString(vm, "anyfunc");
    131131        break;
    132132    case Wasm::TableElementType::Externref:
Note: See TracChangeset for help on using the changeset viewer.