| ;;; TOOL: run-interp |
| (module |
| ;; i32 |
| (func (export "i32_add") (result i32) |
| i32.const 1 |
| i32.const 2 |
| i32.add) |
| (func (export "i32_sub") (result i32) |
| i32.const 20 |
| i32.const 4 |
| i32.sub) |
| (func (export "i32_mul") (result i32) |
| i32.const 3 |
| i32.const 7 |
| i32.mul) |
| (func (export "i32_div_s") (result i32) |
| i32.const -4 |
| i32.const 2 |
| i32.div_s) |
| (func (export "i32_div_u") (result i32) |
| i32.const -4 |
| i32.const 2 |
| i32.div_u) |
| (func (export "i32_rem_s") (result i32) |
| i32.const -5 |
| i32.const 2 |
| i32.rem_s) |
| (func (export "i32_rem_u") (result i32) |
| i32.const -5 |
| i32.const 2 |
| i32.rem_u) |
| (func (export "i32_and") (result i32) |
| i32.const 11 |
| i32.const 5 |
| i32.and) |
| (func (export "i32_or") (result i32) |
| i32.const 11 |
| i32.const 5 |
| i32.or) |
| (func (export "i32_xor") (result i32) |
| i32.const 11 |
| i32.const 5 |
| i32.xor) |
| (func (export "i32_shl") (result i32) |
| i32.const -100 |
| i32.const 3 |
| i32.shl) |
| (func (export "i32_shr_u") (result i32) |
| i32.const -100 |
| i32.const 3 |
| i32.shr_u) |
| (func (export "i32_shr_s") (result i32) |
| i32.const -100 |
| i32.const 3 |
| i32.shr_s) |
| (func (export "i32_rotl") (result i32) |
| i32.const -100 |
| i32.const 3 |
| i32.rotl) |
| (func (export "i32_rotr") (result i32) |
| i32.const -100 |
| i32.const 3 |
| i32.rotr) |
| |
| ;; i64 |
| (func (export "i64_add") (result i64) |
| i64.const 1 |
| i64.const 2 |
| i64.add) |
| (func (export "i64_sub") (result i64) |
| i64.const 20 |
| i64.const 4 |
| i64.sub) |
| (func (export "i64_mul") (result i64) |
| i64.const 3 |
| i64.const 7 |
| i64.mul) |
| (func (export "i64_div_s") (result i64) |
| i64.const -4 |
| i64.const 2 |
| i64.div_s) |
| (func (export "i64_div_u") (result i64) |
| i64.const -4 |
| i64.const 2 |
| i64.div_u) |
| (func (export "i64_rem_s") (result i64) |
| i64.const -5 |
| i64.const 2 |
| i64.rem_s) |
| (func (export "i64_rem_u") (result i64) |
| i64.const -5 |
| i64.const 2 |
| i64.rem_u) |
| (func (export "i64_and") (result i64) |
| i64.const 11 |
| i64.const 5 |
| i64.and) |
| (func (export "i64_or") (result i64) |
| i64.const 11 |
| i64.const 5 |
| i64.or) |
| (func (export "i64_xor") (result i64) |
| i64.const 11 |
| i64.const 5 |
| i64.xor) |
| (func (export "i64_shl") (result i64) |
| i64.const -100 |
| i64.const 3 |
| i64.shl) |
| (func (export "i64_shr_u") (result i64) |
| i64.const -100 |
| i64.const 3 |
| i64.shr_u) |
| (func (export "i64_shr_s") (result i64) |
| i64.const -100 |
| i64.const 3 |
| i64.shr_s) |
| (func (export "i64_rotl") (result i64) |
| i64.const -100 |
| i64.const 3 |
| i64.rotl) |
| (func (export "i64_rotr") (result i64) |
| i64.const -100 |
| i64.const 3 |
| i64.rotr) |
| |
| ;; f32 |
| (func (export "f32_add") (result f32) |
| f32.const 1.25 |
| f32.const 3.75 |
| f32.add) |
| (func (export "f32_sub") (result f32) |
| f32.const 4.5 |
| f32.const 1e4 |
| f32.sub) |
| (func (export "f32_mul") (result f32) |
| f32.const 1234.5 |
| f32.const -6.875 |
| f32.mul) |
| (func (export "f32_div") (result f32) |
| f32.const 1e14 |
| f32.const -2e5 |
| f32.div) |
| (func (export "f32_min") (result f32) |
| f32.const 0 |
| f32.const 0 |
| f32.min) |
| (func (export "f32_max") (result f32) |
| f32.const 0 |
| f32.const 0 |
| f32.max) |
| (func (export "f32_copysign") (result f32) |
| f32.const 0 |
| f32.const 0 |
| f32.copysign) |
| |
| ;; f64 |
| (func (export "f64_add") (result f64) |
| f64.const 987654321 |
| f64.const 123456789 |
| f64.add) |
| (func (export "f64_sub") (result f64) |
| f64.const 1234e56 |
| f64.const 5.5e23 |
| f64.sub) |
| (func (export "f64_mul") (result f64) |
| f64.const -123e4 |
| f64.const 12341234 |
| f64.mul) |
| (func (export "f64_div") (result f64) |
| f64.const 1e200 |
| f64.const 1e50 |
| f64.div) |
| (func (export "f64_min") (result f64) |
| f64.const 0 |
| f64.const 0 |
| f64.min) |
| (func (export "f64_max") (result f64) |
| f64.const 0 |
| f64.const 0 |
| f64.max) |
| (func (export "f64_copysign") (result f64) |
| f64.const 0 |
| f64.const 0 |
| f64.copysign) |
| ) |
| (;; STDOUT ;;; |
| i32_add() => i32:3 |
| i32_sub() => i32:16 |
| i32_mul() => i32:21 |
| i32_div_s() => i32:4294967294 |
| i32_div_u() => i32:2147483646 |
| i32_rem_s() => i32:4294967295 |
| i32_rem_u() => i32:1 |
| i32_and() => i32:1 |
| i32_or() => i32:15 |
| i32_xor() => i32:14 |
| i32_shl() => i32:4294966496 |
| i32_shr_u() => i32:536870899 |
| i32_shr_s() => i32:4294967283 |
| i32_rotl() => i32:4294966503 |
| i32_rotr() => i32:2684354547 |
| 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.000000 |
| f32_sub() => f32:-9995.500000 |
| f32_mul() => f32:-8487.187500 |
| f32_div() => f32:-500000000.000000 |
| f32_min() => f32:0.000000 |
| f32_max() => f32:0.000000 |
| f32_copysign() => f32:0.000000 |
| f64_add() => f64:1111111110.000000 |
| f64_sub() => f64:123400000000000007812762268812638756607430593436581896388608.000000 |
| f64_mul() => f64:-15179717820000.000000 |
| f64_div() => f64:999999999999999980835596172437374590573120014030318793091164810154100112203678582976298268616221151962702060266176005440567032331208403948233373515776.000000 |
| f64_min() => f64:0.000000 |
| f64_max() => f64:0.000000 |
| f64_copysign() => f64:0.000000 |
| ;;; STDOUT ;;) |