diff options
author | Sam Clegg <sbc@chromium.org> | 2021-10-13 09:52:25 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-13 16:52:25 +0000 |
commit | 30c1e983d30b33a8004b39fd60cbd64477a7956c (patch) | |
tree | cb17fc468d4fab92f961d49c54798051eea8c617 /test/spec | |
parent | 081f6c21ef0998c21f7b33bc82cfa50d5a4ddfd2 (diff) | |
download | wabt-30c1e983d30b33a8004b39fd60cbd64477a7956c.tar.gz wabt-30c1e983d30b33a8004b39fd60cbd64477a7956c.tar.bz2 wabt-30c1e983d30b33a8004b39fd60cbd64477a7956c.zip |
Enable reference types by default (#1729)
This features was finished earlier this year:
https://github.com/WebAssembly/proposals/blob/master/finished-proposals.md
One thing to note is that the version of the spec tests we currently
have in third_party/testsuite doesn't have ref types merged yet so
this change disables ref types when running some of those tests. This
can be removed in a followup when we update the testsuite.
Diffstat (limited to 'test/spec')
36 files changed, 6 insertions, 31 deletions
diff --git a/test/spec/binary.txt b/test/spec/binary.txt index 97363d3e..979019ef 100644 --- a/test/spec/binary.txt +++ b/test/spec/binary.txt @@ -1,4 +1,5 @@ ;;; TOOL: run-interp-spec +;;; ARGS*: --disable-reference-types ;;; STDIN_FILE: third_party/testsuite/binary.wast (;; STDOUT ;;; out/test/spec/binary.wast:6: assert_malformed passed: diff --git a/test/spec/bulk-memory-operations/binary.txt b/test/spec/bulk-memory-operations/binary.txt index 3b56c28a..a497f773 100644 --- a/test/spec/bulk-memory-operations/binary.txt +++ b/test/spec/bulk-memory-operations/binary.txt @@ -1,4 +1,5 @@ ;;; TOOL: run-interp-spec +;;; ARGS*: --disable-reference-types ;;; STDIN_FILE: third_party/testsuite/proposals/bulk-memory-operations/binary.wast (;; STDOUT ;;; out/test/spec/bulk-memory-operations/binary.wast:6: assert_malformed passed: diff --git a/test/spec/bulk-memory-operations/imports.txt b/test/spec/bulk-memory-operations/imports.txt index 51df9e35..ce8a1108 100644 --- a/test/spec/bulk-memory-operations/imports.txt +++ b/test/spec/bulk-memory-operations/imports.txt @@ -1,4 +1,5 @@ ;;; TOOL: run-interp-spec +;;; ARGS*: --disable-reference-types ;;; STDIN_FILE: third_party/testsuite/proposals/bulk-memory-operations/imports.wast (;; STDOUT ;;; called host spectest.print_i32(i32:13) => diff --git a/test/spec/imports.txt b/test/spec/imports.txt index 9fcb8e9f..e3798814 100644 --- a/test/spec/imports.txt +++ b/test/spec/imports.txt @@ -1,4 +1,5 @@ ;;; TOOL: run-interp-spec +;;; ARGS*: --disable-reference-types ;;; STDIN_FILE: third_party/testsuite/imports.wast (;; STDOUT ;;; called host spectest.print_i32(i32:13) => diff --git a/test/spec/memory64/binary.txt b/test/spec/memory64/binary.txt index 6cf1112c..d6135c15 100644 --- a/test/spec/memory64/binary.txt +++ b/test/spec/memory64/binary.txt @@ -1,6 +1,6 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/memory64/binary.wast -;;; ARGS*: --enable-memory64 +;;; ARGS*: --enable-memory64 --disable-reference-types (;; STDOUT ;;; out/test/spec/memory64/binary.wast:6: assert_malformed passed: 0000000: error: unable to read uint32_t: magic diff --git a/test/spec/reference-types/binary-leb128.txt b/test/spec/reference-types/binary-leb128.txt index c35213b4..72e56434 100644 --- a/test/spec/reference-types/binary-leb128.txt +++ b/test/spec/reference-types/binary-leb128.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/binary-leb128.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/binary-leb128.wast:218: assert_malformed passed: 000000c: error: unable to read u32 leb128: memory initial page count diff --git a/test/spec/reference-types/binary.txt b/test/spec/reference-types/binary.txt index 4009f571..e6b1ab5c 100644 --- a/test/spec/reference-types/binary.txt +++ b/test/spec/reference-types/binary.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/binary.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/binary.wast:6: assert_malformed passed: 0000000: error: unable to read uint32_t: magic diff --git a/test/spec/reference-types/br_table.txt b/test/spec/reference-types/br_table.txt index 9043dea5..feb229b7 100644 --- a/test/spec/reference-types/br_table.txt +++ b/test/spec/reference-types/br_table.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/br_table.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/br_table.wast:1441: assert_invalid passed: error: type mismatch in block, expected [] but got [i32] diff --git a/test/spec/reference-types/bulk.txt b/test/spec/reference-types/bulk.txt index f9308ccb..099e571f 100644 --- a/test/spec/reference-types/bulk.txt +++ b/test/spec/reference-types/bulk.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/bulk.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; fill(i32:1, i32:255, i32:3) => fill(i32:0, i32:48042, i32:2) => diff --git a/test/spec/reference-types/call_indirect.txt b/test/spec/reference-types/call_indirect.txt index 88b98a58..17a54826 100644 --- a/test/spec/reference-types/call_indirect.txt +++ b/test/spec/reference-types/call_indirect.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/call_indirect.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/call_indirect.wast:498: assert_trap passed: indirect call signature mismatch out/test/spec/reference-types/call_indirect.wast:499: assert_trap passed: indirect call signature mismatch diff --git a/test/spec/reference-types/custom.txt b/test/spec/reference-types/custom.txt index 6fbd2262..5ab901e6 100644 --- a/test/spec/reference-types/custom.txt +++ b/test/spec/reference-types/custom.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/custom.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/custom.wast:61: assert_malformed passed: 0000009: error: unable to read u32 leb128: section size diff --git a/test/spec/reference-types/data.txt b/test/spec/reference-types/data.txt index d3e3d4bc..16969b30 100644 --- a/test/spec/reference-types/data.txt +++ b/test/spec/reference-types/data.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/data.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/data.wast:293: assert_invalid passed: 0000000: error: memory variable out of range: 0 (max 0) diff --git a/test/spec/reference-types/elem.txt b/test/spec/reference-types/elem.txt index 0ba0ec0e..61b971c3 100644 --- a/test/spec/reference-types/elem.txt +++ b/test/spec/reference-types/elem.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/elem.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/elem.wast:320: assert_trap passed: out of bounds table access: table.init out of bounds out/test/spec/reference-types/elem.wast:330: assert_trap passed: out of bounds table access: table.init out of bounds diff --git a/test/spec/reference-types/exports.txt b/test/spec/reference-types/exports.txt index c1750d71..0fb8bdc8 100644 --- a/test/spec/reference-types/exports.txt +++ b/test/spec/reference-types/exports.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/exports.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/exports.wast:29: assert_invalid passed: 0000000: error: function variable out of range: 1 (max 1) diff --git a/test/spec/reference-types/global.txt b/test/spec/reference-types/global.txt index 0a34a13b..e2e6fa1a 100644 --- a/test/spec/reference-types/global.txt +++ b/test/spec/reference-types/global.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/global.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/global.wast:232: assert_trap passed: undefined table index out/test/spec/reference-types/global.wast:254: assert_invalid passed: diff --git a/test/spec/reference-types/imports.txt b/test/spec/reference-types/imports.txt index e26ea8fc..21367f9b 100644 --- a/test/spec/reference-types/imports.txt +++ b/test/spec/reference-types/imports.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/imports.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; called host spectest.print_i32(i32:13) => called host spectest.print_i32_f32(i32:14, f32:42.000000) => diff --git a/test/spec/reference-types/linking.txt b/test/spec/reference-types/linking.txt index 1b09f540..758eb4dc 100644 --- a/test/spec/reference-types/linking.txt +++ b/test/spec/reference-types/linking.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/linking.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/linking.wast:28: assert_unlinkable passed: error: import signature mismatch diff --git a/test/spec/reference-types/memory_copy.txt b/test/spec/reference-types/memory_copy.txt index 5b4ce614..fe4630dc 100644 --- a/test/spec/reference-types/memory_copy.txt +++ b/test/spec/reference-types/memory_copy.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_copy.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; test() => test() => diff --git a/test/spec/reference-types/memory_fill.txt b/test/spec/reference-types/memory_fill.txt index edab2478..fa1d88bb 100644 --- a/test/spec/reference-types/memory_fill.txt +++ b/test/spec/reference-types/memory_fill.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_fill.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; test() => out/test/spec/reference-types/memory_fill.wast:44: assert_trap passed: out of bounds memory access: memory.fill out of bounds diff --git a/test/spec/reference-types/memory_grow.txt b/test/spec/reference-types/memory_grow.txt index 76a465ac..3af85468 100644 --- a/test/spec/reference-types/memory_grow.txt +++ b/test/spec/reference-types/memory_grow.txt @@ -1,7 +1,6 @@ ;;; SLOW: ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_grow.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/memory_grow.wast:15: assert_trap passed: out of bounds memory access: access at 0+4 >= max value 0 out/test/spec/reference-types/memory_grow.wast:16: assert_trap passed: out of bounds memory access: access at 0+4 >= max value 0 diff --git a/test/spec/reference-types/memory_init.txt b/test/spec/reference-types/memory_init.txt index c9b786c3..38ca68fe 100644 --- a/test/spec/reference-types/memory_init.txt +++ b/test/spec/reference-types/memory_init.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/memory_init.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; test() => test() => diff --git a/test/spec/reference-types/ref_func.txt b/test/spec/reference-types/ref_func.txt index b4390fcd..8c90b864 100644 --- a/test/spec/reference-types/ref_func.txt +++ b/test/spec/reference-types/ref_func.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/ref_func.wast -;;; ARGS*: --enable-reference-types (;; STDERR ;;; out/test/spec/reference-types/ref_func.wast:98:15: error: function is not declared in any elem sections (ref.func $f1) diff --git a/test/spec/reference-types/ref_is_null.txt b/test/spec/reference-types/ref_is_null.txt index b3cc0ede..f6bcb4a8 100644 --- a/test/spec/reference-types/ref_is_null.txt +++ b/test/spec/reference-types/ref_is_null.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/ref_is_null.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; init(externref:1) => deinit() => diff --git a/test/spec/reference-types/ref_null.txt b/test/spec/reference-types/ref_null.txt index bfd6fb4f..a49e36ae 100644 --- a/test/spec/reference-types/ref_null.txt +++ b/test/spec/reference-types/ref_null.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/ref_null.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; 2/2 tests passed. ;;; STDOUT ;;) diff --git a/test/spec/reference-types/select.txt b/test/spec/reference-types/select.txt index 84e57e17..300bea1d 100644 --- a/test/spec/reference-types/select.txt +++ b/test/spec/reference-types/select.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/select.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/select.wast:260: assert_trap passed: unreachable executed out/test/spec/reference-types/select.wast:261: assert_trap passed: unreachable executed diff --git a/test/spec/reference-types/table-sub.txt b/test/spec/reference-types/table-sub.txt index 313158f6..d9622c30 100644 --- a/test/spec/reference-types/table-sub.txt +++ b/test/spec/reference-types/table-sub.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table-sub.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/table-sub.wast:2: assert_invalid passed: error: type mismatch at table.copy. got externref, expected funcref diff --git a/test/spec/reference-types/table.txt b/test/spec/reference-types/table.txt index a0dde4c4..4cc95c9d 100644 --- a/test/spec/reference-types/table.txt +++ b/test/spec/reference-types/table.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/table.wast:14: assert_invalid passed: 0000000: error: table variable out of range: 0 (max 0) diff --git a/test/spec/reference-types/table_copy.txt b/test/spec/reference-types/table_copy.txt index 0fadee3e..c88eec79 100644 --- a/test/spec/reference-types/table_copy.txt +++ b/test/spec/reference-types/table_copy.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_copy.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; test() => out/test/spec/reference-types/table_copy.wast:46: assert_trap passed: uninitialized table element diff --git a/test/spec/reference-types/table_fill.txt b/test/spec/reference-types/table_fill.txt index 2910f923..556edba9 100644 --- a/test/spec/reference-types/table_fill.txt +++ b/test/spec/reference-types/table_fill.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_fill.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/table_fill.wast:50: assert_trap passed: out of bounds table access: table.fill out of bounds out/test/spec/reference-types/table_fill.wast:58: assert_trap passed: out of bounds table access: table.fill out of bounds diff --git a/test/spec/reference-types/table_get.txt b/test/spec/reference-types/table_get.txt index a2be5a23..f4c34a3e 100644 --- a/test/spec/reference-types/table_get.txt +++ b/test/spec/reference-types/table_get.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_get.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; init(externref:2) => out/test/spec/reference-types/table_get.wast:33: assert_trap passed: out of bounds table access: table.get at 2 >= max value 2 diff --git a/test/spec/reference-types/table_grow.txt b/test/spec/reference-types/table_grow.txt index 6a60f6eb..6b163a2b 100644 --- a/test/spec/reference-types/table_grow.txt +++ b/test/spec/reference-types/table_grow.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_grow.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/table_grow.wast:14: assert_trap passed: out of bounds table access: table.set at 0 >= max value 0 out/test/spec/reference-types/table_grow.wast:15: assert_trap passed: out of bounds table access: table.get at 0 >= max value 0 diff --git a/test/spec/reference-types/table_init.txt b/test/spec/reference-types/table_init.txt index efb6e6e2..6c81ee0e 100644 --- a/test/spec/reference-types/table_init.txt +++ b/test/spec/reference-types/table_init.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_init.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; test() => out/test/spec/reference-types/table_init.wast:42: assert_trap passed: uninitialized table element diff --git a/test/spec/reference-types/table_set.txt b/test/spec/reference-types/table_set.txt index a479c7ab..c8e964ee 100644 --- a/test/spec/reference-types/table_set.txt +++ b/test/spec/reference-types/table_set.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_set.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/table_set.wast:41: assert_trap passed: out of bounds table access: table.set at 2 >= max value 1 out/test/spec/reference-types/table_set.wast:42: assert_trap passed: out of bounds table access: table.set at 3 >= max value 2 diff --git a/test/spec/reference-types/table_size.txt b/test/spec/reference-types/table_size.txt index 823ec64d..0564abb4 100644 --- a/test/spec/reference-types/table_size.txt +++ b/test/spec/reference-types/table_size.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/table_size.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/table_size.wast:70: assert_invalid passed: error: type mismatch in function, expected [] but got [i32] diff --git a/test/spec/reference-types/unreached-invalid.txt b/test/spec/reference-types/unreached-invalid.txt index f687a4a3..bf7812b0 100644 --- a/test/spec/reference-types/unreached-invalid.txt +++ b/test/spec/reference-types/unreached-invalid.txt @@ -1,6 +1,5 @@ ;;; TOOL: run-interp-spec ;;; STDIN_FILE: third_party/testsuite/proposals/reference-types/unreached-invalid.wast -;;; ARGS*: --enable-reference-types (;; STDOUT ;;; out/test/spec/reference-types/unreached-invalid.wast:4: assert_invalid passed: 0000000: error: local variable out of range (max 0) diff --git a/test/spec/table.txt b/test/spec/table.txt index 535f089c..97b82807 100644 --- a/test/spec/table.txt +++ b/test/spec/table.txt @@ -1,4 +1,5 @@ ;;; TOOL: run-interp-spec +;;; ARGS*: --disable-reference-types ;;; STDIN_FILE: third_party/testsuite/table.wast (;; STDOUT ;;; out/test/spec/table.wast:11: assert_invalid passed: |