summaryrefslogtreecommitdiff
path: root/test/binaryen.js/kitchen-sink.js
diff options
context:
space:
mode:
authorDaniel Wirtz <dcode@dcode.io>2020-09-19 08:48:06 +0200
committerGitHub <noreply@github.com>2020-09-19 08:48:06 +0200
commite35cdb97adf6eb2ade2be7734d1c6c397d440dc1 (patch)
tree7a740e6fc54d286a05ca3e746ae1e7f3c4b783a8 /test/binaryen.js/kitchen-sink.js
parente308db569ab2582d3b0ea9accdbaa3b27abdb044 (diff)
downloadbinaryen-e35cdb97adf6eb2ade2be7734d1c6c397d440dc1.tar.gz
binaryen-e35cdb97adf6eb2ade2be7734d1c6c397d440dc1.tar.bz2
binaryen-e35cdb97adf6eb2ade2be7734d1c6c397d440dc1.zip
GC: Integrate eqref and i31ref types (#3141)
Adds the `eqref` and `i31ref` types to their respective code locations. Implements what can be implemented trivially and otherwise traps with a TODO for now. Integration of `eqref` is mostly complete due to it being nullable, just like `anyref`, but `i31ref` needs to remain disabled in the fuzzer because we are lacking the functionality to create trivial `i31ref` values, i.e. `(i31.new (i32.const 0))`, which is left for follow-ups to implement.
Diffstat (limited to 'test/binaryen.js/kitchen-sink.js')
-rw-r--r--test/binaryen.js/kitchen-sink.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/test/binaryen.js/kitchen-sink.js b/test/binaryen.js/kitchen-sink.js
index d985b39aa..342315682 100644
--- a/test/binaryen.js/kitchen-sink.js
+++ b/test/binaryen.js/kitchen-sink.js
@@ -80,6 +80,12 @@ function test_types() {
console.log(" // BinaryenTypeAnyref: " + binaryen.anyref);
console.log(" //", binaryen.expandType(binaryen.anyref).join(","));
+ console.log(" // BinaryenTypeEqref: " + binaryen.eqref);
+ console.log(" //", binaryen.expandType(binaryen.eqref).join(","));
+
+ console.log(" // BinaryenTypeI31ref: " + binaryen.i31ref);
+ console.log(" //", binaryen.expandType(binaryen.i31ref).join(","));
+
console.log(" // BinaryenTypeAuto: " + binaryen.auto);
var i32_pair = binaryen.createType([binaryen.i32, binaryen.i32]);
@@ -570,9 +576,12 @@ function test_core() {
module.f32.pop(),
module.f64.pop(),
module.v128.pop(),
- module.externref.pop(),
module.funcref.pop(),
+ module.externref.pop(),
module.exnref.pop(),
+ module.anyref.pop(),
+ module.eqref.pop(),
+ module.i31ref.pop(),
// Memory
module.memory.size(),