diff options
author | Ben Smith <binji@chromium.org> | 2016-09-26 17:03:05 -0700 |
---|---|---|
committer | Ben Smith <binji@chromium.org> | 2016-09-29 11:37:27 -0700 |
commit | 1133575d48958ef6cd483e7ecef0ed1001d3ae57 (patch) | |
tree | 3189025965fec901ffb4ee4ae44c17fac8c51e63 /test/interp/binary.txt | |
parent | c92a909563d12f81d382df8428d5e4e0e2ee91fc (diff) | |
download | wabt-1133575d48958ef6cd483e7ecef0ed1001d3ae57.tar.gz wabt-1133575d48958ef6cd483e7ecef0ed1001d3ae57.tar.bz2 wabt-1133575d48958ef6cd483e7ecef0ed1001d3ae57.zip |
fix most of the interp tests
Still need to do imports
Diffstat (limited to 'test/interp/binary.txt')
-rw-r--r-- | test/interp/binary.txt | 199 |
1 files changed, 74 insertions, 125 deletions
diff --git a/test/interp/binary.txt b/test/interp/binary.txt index a3eeca0f..3c70634b 100644 --- a/test/interp/binary.txt +++ b/test/interp/binary.txt @@ -1,122 +1,71 @@ ;;; TOOL: run-interp (module ;; i32 - (export "i32_add" $i32_add) - (func $i32_add (result i32) (i32.add (i32.const 1) (i32.const 2))) - (export "i32_sub" $i32_sub) - (func $i32_sub (result i32) (i32.sub (i32.const 20) (i32.const 4))) - (export "i32_mul" $i32_mul) - (func $i32_mul (result i32) (i32.mul (i32.const 3) (i32.const 7))) - (export "i32_div_s" $i32_div_s) - (func $i32_div_s (result i32) (i32.div_s (i32.const -4) (i32.const 2))) - (export "i32_div_u" $i32_div_u) - (func $i32_div_u (result i32) (i32.div_u (i32.const -4) (i32.const 2))) - (export "i32_rem_s" $i32_rem_s) - (func $i32_rem_s (result i32) (i32.rem_s (i32.const -5) (i32.const 2))) - (export "i32_rem_u" $i32_rem_u) - (func $i32_rem_u (result i32) (i32.rem_u (i32.const -5) (i32.const 2))) - (export "i32_and" $i32_and) - (func $i32_and (result i32) (i32.and (i32.const 11) (i32.const 5))) - (export "i32_or" $i32_or) - (func $i32_or (result i32) (i32.or (i32.const 11) (i32.const 5))) - (export "i32_xor" $i32_xor) - (func $i32_xor (result i32) (i32.xor (i32.const 11) (i32.const 5))) - (export "i32_shl" $i32_shl) - (func $i32_shl (result i32) (i32.shl (i32.const -100) (i32.const 3))) - (export "i32_shr_u" $i32_shr_u) - (func $i32_shr_u (result i32) (i32.shr_u (i32.const -100) (i32.const 3))) - (export "i32_shr_s" $i32_shr_s) - (func $i32_shr_s (result i32) (i32.shr_s (i32.const -100) (i32.const 3))) - (export "i32_rotl" $i32_rotl) - (func $i32_rotl (result i32) (i32.rotl (i32.const -100) (i32.const 3))) - (export "i32_rotr" $i32_rotr) - (func $i32_rotr (result i32) (i32.rotr (i32.const -100) (i32.const 3))) + (func (export "i32_add") (result i32) (i32.add (i32.const 1) (i32.const 2))) + (func (export "i32_sub") (result i32) (i32.sub (i32.const 20) (i32.const 4))) + (func (export "i32_mul") (result i32) (i32.mul (i32.const 3) (i32.const 7))) + (func (export "i32_div_s") (result i32) (i32.div_s (i32.const -4) (i32.const 2))) + (func (export "i32_div_u") (result i32) (i32.div_u (i32.const -4) (i32.const 2))) + (func (export "i32_rem_s") (result i32) (i32.rem_s (i32.const -5) (i32.const 2))) + (func (export "i32_rem_u") (result i32) (i32.rem_u (i32.const -5) (i32.const 2))) + (func (export "i32_and") (result i32) (i32.and (i32.const 11) (i32.const 5))) + (func (export "i32_or") (result i32) (i32.or (i32.const 11) (i32.const 5))) + (func (export "i32_xor") (result i32) (i32.xor (i32.const 11) (i32.const 5))) + (func (export "i32_shl") (result i32) (i32.shl (i32.const -100) (i32.const 3))) + (func (export "i32_shr_u") (result i32) (i32.shr_u (i32.const -100) (i32.const 3))) + (func (export "i32_shr_s") (result i32) (i32.shr_s (i32.const -100) (i32.const 3))) + (func (export "i32_rotl") (result i32) (i32.rotl (i32.const -100) (i32.const 3))) + (func (export "i32_rotr") (result i32) (i32.rotr (i32.const -100) (i32.const 3))) ;; i64 - ;; The JavaScript host truncates if you try to return an i64, so we'll do a - ;; comparison against the expected value instead. - (export "i64_add" $i64_add) - (func $i64_add (result i32) (i64.eq (i64.add (i64.const 1) (i64.const 2)) - (i64.const 3))) - (export "i64_sub" $i64_sub) - (func $i64_sub (result i32) (i64.eq (i64.sub (i64.const 20) (i64.const 4)) - (i64.const 16))) - (export "i64_mul" $i64_mul) - (func $i64_mul (result i32) (i64.eq (i64.mul (i64.const 3) (i64.const 7)) - (i64.const 21))) - (export "i64_div_s" $i64_div_s) - (func $i64_div_s (result i32) (i64.eq (i64.div_s (i64.const -4) (i64.const 2)) - (i64.const -2))) - (export "i64_div_u" $i64_div_u) - (func $i64_div_u (result i32) (i64.eq (i64.div_u (i64.const -4) (i64.const 2)) - (i64.const 9223372036854775806))) - (export "i64_rem_s" $i64_rem_s) - (func $i64_rem_s (result i32) (i64.eq (i64.rem_s (i64.const -5) (i64.const 2)) - (i64.const -1))) - (export "i64_rem_u" $i64_rem_u) - (func $i64_rem_u (result i32) (i64.eq (i64.rem_u (i64.const -5) (i64.const 2)) - (i64.const 1))) - (export "i64_and" $i64_and) - (func $i64_and (result i32) (i64.eq (i64.and (i64.const 11) (i64.const 5)) - (i64.const 1))) - (export "i64_or" $i64_or) - (func $i64_or (result i32) (i64.eq (i64.or (i64.const 11) (i64.const 5)) - (i64.const 15))) - (export "i64_xor" $i64_xor) - (func $i64_xor (result i32) (i64.eq (i64.xor (i64.const 11) (i64.const 5)) - (i64.const 14))) - (export "i64_shl" $i64_shl) - (func $i64_shl (result i32) (i64.eq (i64.shl (i64.const -100) (i64.const 3)) - (i64.const -800))) - (export "i64_shr_u" $i64_shr_u) - (func $i64_shr_u (result i32) - (i64.eq (i64.shr_u (i64.const -100) (i64.const 3)) - (i64.const 2305843009213693939))) - (export "i64_shr_s" $i64_shr_s) - (func $i64_shr_s (result i32) - (i64.eq (i64.shr_s (i64.const -100) (i64.const 3)) (i64.const -13))) - (export "i64_rotl" $i64_rotl) - (func $i64_rotl (result i32) (i64.eq (i64.rotl (i64.const -100) (i64.const 3)) - (i64.const -793))) - (export "i64_rotr" $i64_rotr) - (func $i64_rotr (result i32) (i64.eq (i64.rotr (i64.const -100) (i64.const 3)) - (i64.const -6917529027641081869))) + (func (export "i64_add") (result i64) (i64.add (i64.const 1) (i64.const 2))) + (func (export "i64_sub") (result i64) (i64.sub (i64.const 20) (i64.const 4))) + (func (export "i64_mul") (result i64) (i64.mul (i64.const 3) (i64.const 7))) + (func (export "i64_div_s") (result i64) (i64.div_s (i64.const -4) (i64.const 2))) + (func (export "i64_div_u") (result i64) (i64.div_u (i64.const -4) (i64.const 2))) + (func (export "i64_rem_s") (result i64) (i64.rem_s (i64.const -5) (i64.const 2))) + (func (export "i64_rem_u") (result i64) (i64.rem_u (i64.const -5) (i64.const 2))) + (func (export "i64_and") (result i64) (i64.and (i64.const 11) (i64.const 5))) + (func (export "i64_or") (result i64) (i64.or (i64.const 11) (i64.const 5))) + (func (export "i64_xor") (result i64) (i64.xor (i64.const 11) (i64.const 5))) + (func (export "i64_shl") (result i64) (i64.shl (i64.const -100) (i64.const 3))) + (func (export "i64_shr_u") (result i64) (i64.shr_u (i64.const -100) (i64.const 3))) + (func (export "i64_shr_s") (result i64) (i64.shr_s (i64.const -100) (i64.const 3))) + (func (export "i64_rotl") (result i64) (i64.rotl (i64.const -100) (i64.const 3))) + (func (export "i64_rotr") (result i64) (i64.rotr (i64.const -100) (i64.const 3))) ;; f32 - (export "f32_add" $f32_add) - (func $f32_add (result f32) (f32.add (f32.const 1.25) (f32.const 3.75))) - (export "f32_sub" $f32_sub) - (func $f32_sub (result f32) (f32.sub (f32.const 4.5) (f32.const 1e4))) - (export "f32_mul" $f32_mul) - (func $f32_mul (result f32) (f32.mul (f32.const 1234.5) (f32.const -6.875))) - (export "f32_div" $f32_div) - (func $f32_div (result f32) (f32.div (f32.const 1e14) (f32.const -2e5))) - (export "f32_min" $f32_min) - (func $f32_min (result f32) (f32.min (f32.const 0) (f32.const 0))) - (export "f32_max" $f32_max) - (func $f32_max (result f32) (f32.max (f32.const 0) (f32.const 0))) - (export "f32_copysign" $f32_copysign) - (func $f32_copysign (result f32) (f32.copysign (f32.const 0) (f32.const 0))) + (func (export "f32_add") (result f32) + (f32.add (f32.const 1.25) (f32.const 3.75))) + (func (export "f32_sub") (result f32) + (f32.sub (f32.const 4.5) (f32.const 1e4))) + (func (export "f32_mul") (result f32) + (f32.mul (f32.const 1234.5) (f32.const -6.875))) + (func (export "f32_div") (result f32) + (f32.div (f32.const 1e14) (f32.const -2e5))) + (func (export "f32_min") (result f32) + (f32.min (f32.const 0) (f32.const 0))) + (func (export "f32_max") (result f32) + (f32.max (f32.const 0) (f32.const 0))) + (func (export "f32_copysign") (result f32) + (f32.copysign (f32.const 0) (f32.const 0))) ;; f64 - (export "f64_add" $f64_add) - (func $f64_add (result f64) (f64.add (f64.const 987654321) - (f64.const 123456789))) - ;; seems to be returning the first value, not subtracting. - (export "f64_sub" $f64_sub) - (func $f64_sub (result f64) (f64.sub (f64.const 1234e56) (f64.const 5.5e23))) - - (export "f64_mul" $f64_mul) - (func $f64_mul (result f64) (f64.mul (f64.const -123e4) (f64.const 12341234))) - (export "f64_div" $f64_div) - (func $f64_div (result f64) (f64.div (f64.const 1e200) (f64.const 1e50))) - (export "f64_min" $f64_min) - (func $f64_min (result f64) (f64.min (f64.const 0) (f64.const 0))) - (export "f64_max" $f64_max) - (func $f64_max (result f64) (f64.max (f64.const 0) (f64.const 0))) - (export "f64_copysign" $f64_copysign) - (func $f64_copysign (result f64) (f64.copysign (f64.const 0) (f64.const 0))) - ) + (func (export "f64_add") (result f64) + (f64.add (f64.const 987654321) (f64.const 123456789))) + (func (export "f64_sub") (result f64) + (f64.sub (f64.const 1234e56) (f64.const 5.5e23))) + (func (export "f64_mul") (result f64) + (f64.mul (f64.const -123e4) (f64.const 12341234))) + (func (export "f64_div") (result f64) + (f64.div (f64.const 1e200) (f64.const 1e50))) + (func (export "f64_min") (result f64) + (f64.min (f64.const 0) (f64.const 0))) + (func (export "f64_max") (result f64) + (f64.max (f64.const 0) (f64.const 0))) + (func (export "f64_copysign") (result f64) + (f64.copysign (f64.const 0) (f64.const 0))) +) (;; STDOUT ;;; i32_add() => i32:3 i32_sub() => i32:16 @@ -133,21 +82,21 @@ i32_shr_u() => i32:536870899 i32_shr_s() => i32:4294967283 i32_rotl() => i32:4294966503 i32_rotr() => i32:2684354547 -i64_add() => i32:1 -i64_sub() => i32:1 -i64_mul() => i32:1 -i64_div_s() => i32:1 -i64_div_u() => i32:1 -i64_rem_s() => i32:1 -i64_rem_u() => i32:1 -i64_and() => i32:1 -i64_or() => i32:1 -i64_xor() => i32:1 -i64_shl() => i32:1 -i64_shr_u() => i32:1 -i64_shr_s() => i32:1 -i64_rotl() => i32:1 -i64_rotr() => i32:1 +i64_add() => i64:3 +i64_sub() => i64:16 +i64_mul() => i64:21 +i64_div_s() => i64:18446744073709551614 +i64_div_u() => i64:9223372036854775806 +i64_rem_s() => i64:18446744073709551615 +i64_rem_u() => i64:1 +i64_and() => i64:1 +i64_or() => i64:15 +i64_xor() => i64:14 +i64_shl() => i64:18446744073709550816 +i64_shr_u() => i64:2305843009213693939 +i64_shr_s() => i64:18446744073709551603 +i64_rotl() => i64:18446744073709550823 +i64_rotr() => i64:11529215046068469747 f32_add() => f32:5 f32_sub() => f32:-9995.5 f32_mul() => f32:-8487.19 |