diff options
author | Jay Phelps <hello@jayphelps.com> | 2018-09-11 16:09:45 -0400 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2018-09-11 13:09:45 -0700 |
commit | 30de95a537857eac7c33b46cdf3606f93dff37c9 (patch) | |
tree | 989b06234755d04350f7e7a1bed1e4cf973da931 /test/spec/start.wast | |
parent | 249b4b78d765c0f83029c3afd107cbe9ea025681 (diff) | |
download | binaryen-30de95a537857eac7c33b46cdf3606f93dff37c9.tar.gz binaryen-30de95a537857eac7c33b46cdf3606f93dff37c9.tar.bz2 binaryen-30de95a537857eac7c33b46cdf3606f93dff37c9.zip |
check-in the test/spec suite instead of as submodule (#1677)
Diffstat (limited to 'test/spec/start.wast')
-rw-r--r-- | test/spec/start.wast | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/test/spec/start.wast b/test/spec/start.wast new file mode 100644 index 000000000..a20c449be --- /dev/null +++ b/test/spec/start.wast @@ -0,0 +1,88 @@ +(assert_invalid + (module (func) (start 1)) + "unknown function" +) +(assert_invalid + (module + (func $main (result i32) (return (i32.const 0))) + (start $main) + ) + "start function" +) +(assert_invalid + (module + (func $main (param $a i32)) + (start $main) + ) + "start function" +) +(module + (memory (data "A")) + (func $inc + (i32.store8 + (i32.const 0) + (i32.add + (i32.load8_u (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $get (result i32) + (return (i32.load8_u (i32.const 0))) + ) + (func $main + (call $inc) + (call $inc) + (call $inc) + ) + + (start $main) + (export "inc" (func $inc)) + (export "get" (func $get)) +) +(assert_return (invoke "get") (i32.const 68)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 69)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 70)) + +(module + (memory (data "A")) + (func $inc + (i32.store8 + (i32.const 0) + (i32.add + (i32.load8_u (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $get (result i32) + (return (i32.load8_u (i32.const 0))) + ) + (func $main + (call $inc) + (call $inc) + (call $inc) + ) + (start 2) + (export "inc" (func $inc)) + (export "get" (func $get)) +) +(assert_return (invoke "get") (i32.const 68)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 69)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 70)) + +(module + (func $print_i32 (import "spectest" "print") (param i32)) + (func $main (call $print_i32 (i32.const 1))) + (start 1) +) + +(module + (func $print_i32 (import "spectest" "print") (param i32)) + (func $main (call $print_i32 (i32.const 2))) + (start $main) +) |