| (module |
| (type $FUNCSIG$vdji (func (param f64 i64 i32))) |
| (type $FUNCSIG$j (func (result i64))) |
| (type $FUNCSIG$ff (func (param f32) (result f32))) |
| (type $FUNCSIG$v (func)) |
| (type $legaltype$illegalImport (func (param f64 i32 i32 i32))) |
| (type $legaltype$illegalImportResult (func (result i32))) |
| (type $legaltype$_fabsf (func (param f64) (result f64))) |
| (type $legaltype$do_i64 (func (result i32))) |
| (import "env" "illegalImport" (func $illegalImport (param f64 i64 i32))) |
| (import "env" "illegalImportResult" (func $illegalImportResult (result i64))) |
| (import "env" "_fabsf" (func $_fabsf (param f32) (result f32))) |
| (import "env" "do_i64" (func $do_i64 (result i64))) |
| (import "env" "abort" (func $abort)) |
| (import "env" "illegalImport" (func $legalimport$illegalImport (param f64 i32 i32 i32))) |
| (import "env" "illegalImportResult" (func $legalimport$illegalImportResult (result i32))) |
| (import "env" "_fabsf" (func $legalimport$_fabsf (param f64) (result f64))) |
| (import "env" "do_i64" (func $legalimport$do_i64 (result i32))) |
| (import "env" "memory" (memory $0 256 256)) |
| (import "env" "table" (table 3 3 anyfunc)) |
| (import "env" "memoryBase" (global $memoryBase i32)) |
| (import "env" "tableBase" (global $tableBase i32)) |
| (global $tempRet0 (mut i32) (i32.const 0)) |
| (elem (get_global $tableBase) $legalfunc$illegalImport $legalfunc$_fabsf $legalfunc$do_i64) |
| (data (get_global $memoryBase) "wasm-only.asm.js") |
| (export "test64" (func $test64)) |
| (export "illegalParam" (func $legalstub$illegalParam)) |
| (export "illegalResult" (func $legalstub$result)) |
| (export "keepAlive" (func $keepAlive)) |
| (func $loads |
| (drop |
| (i32.load8_s |
| (i32.const 100) |
| ) |
| ) |
| (drop |
| (i32.load8_s |
| (i32.const 101) |
| ) |
| ) |
| (drop |
| (i32.load16_s |
| (i32.const 102) |
| ) |
| ) |
| (drop |
| (i32.load16_s |
| (i32.const 103) |
| ) |
| ) |
| (drop |
| (i32.load16_s align=1 |
| (i32.const 104) |
| ) |
| ) |
| (drop |
| (i32.load16_s |
| (i32.const 105) |
| ) |
| ) |
| (drop |
| (i32.load |
| (i32.const 106) |
| ) |
| ) |
| (drop |
| (i32.load |
| (i32.const 107) |
| ) |
| ) |
| (drop |
| (i32.load align=1 |
| (i32.const 108) |
| ) |
| ) |
| (drop |
| (i32.load align=2 |
| (i32.const 109) |
| ) |
| ) |
| (drop |
| (i32.load |
| (i32.const 110) |
| ) |
| ) |
| (drop |
| (f32.load |
| (i32.const 111) |
| ) |
| ) |
| (drop |
| (f32.load |
| (i32.const 112) |
| ) |
| ) |
| (drop |
| (f32.load align=1 |
| (i32.const 113) |
| ) |
| ) |
| (drop |
| (f32.load align=2 |
| (i32.const 114) |
| ) |
| ) |
| (drop |
| (f32.load |
| (i32.const 115) |
| ) |
| ) |
| (drop |
| (f64.load |
| (i32.const 116) |
| ) |
| ) |
| (drop |
| (f64.load |
| (i32.const 117) |
| ) |
| ) |
| (drop |
| (f64.load align=1 |
| (i32.const 118) |
| ) |
| ) |
| (drop |
| (f64.load align=2 |
| (i32.const 119) |
| ) |
| ) |
| (drop |
| (f64.load align=4 |
| (i32.const 120) |
| ) |
| ) |
| (drop |
| (f64.load |
| (i32.const 121) |
| ) |
| ) |
| ) |
| (func $stores |
| (local $0 i32) |
| (local $1 f64) |
| (local $2 f32) |
| (i32.store8 |
| (i32.const 100) |
| (get_local $0) |
| ) |
| (i32.store8 |
| (i32.const 101) |
| (get_local $0) |
| ) |
| (i32.store16 |
| (i32.const 102) |
| (get_local $0) |
| ) |
| (i32.store16 |
| (i32.const 103) |
| (get_local $0) |
| ) |
| (i32.store16 align=1 |
| (i32.const 104) |
| (get_local $0) |
| ) |
| (i32.store16 |
| (i32.const 105) |
| (get_local $0) |
| ) |
| (i32.store |
| (i32.const 106) |
| (get_local $0) |
| ) |
| (i32.store |
| (i32.const 107) |
| (get_local $0) |
| ) |
| (i32.store align=1 |
| (i32.const 108) |
| (get_local $0) |
| ) |
| (i32.store align=2 |
| (i32.const 109) |
| (get_local $0) |
| ) |
| (i32.store |
| (i32.const 110) |
| (get_local $0) |
| ) |
| (f32.store |
| (i32.const 111) |
| (get_local $2) |
| ) |
| (f32.store |
| (i32.const 112) |
| (get_local $2) |
| ) |
| (f32.store align=1 |
| (i32.const 113) |
| (get_local $2) |
| ) |
| (f32.store align=2 |
| (i32.const 114) |
| (get_local $2) |
| ) |
| (f32.store |
| (i32.const 115) |
| (get_local $2) |
| ) |
| (f64.store |
| (i32.const 116) |
| (get_local $1) |
| ) |
| (f64.store |
| (i32.const 117) |
| (get_local $1) |
| ) |
| (f64.store align=1 |
| (i32.const 118) |
| (get_local $1) |
| ) |
| (f64.store align=2 |
| (i32.const 119) |
| (get_local $1) |
| ) |
| (f64.store align=4 |
| (i32.const 120) |
| (get_local $1) |
| ) |
| (f64.store |
| (i32.const 121) |
| (get_local $1) |
| ) |
| ) |
| (func $test |
| (local $0 f32) |
| (local $1 i32) |
| (set_local $1 |
| (i32.reinterpret/f32 |
| (get_local $0) |
| ) |
| ) |
| ) |
| (func $i64s-div (param $0 i64) (param $1 i64) (result i64) |
| (if (result i64) |
| (i64.eqz |
| (get_local $1) |
| ) |
| (i64.const 0) |
| (if (result i64) |
| (i32.and |
| (i64.eq |
| (get_local $0) |
| (i64.const -9223372036854775808) |
| ) |
| (i64.eq |
| (get_local $1) |
| (i64.const -1) |
| ) |
| ) |
| (i64.const 0) |
| (i64.div_s |
| (get_local $0) |
| (get_local $1) |
| ) |
| ) |
| ) |
| ) |
| (func $f64-to-int64 (param $0 f64) (result i64) |
| (if (result i64) |
| (f64.ne |
| (get_local $0) |
| (get_local $0) |
| ) |
| (i64.const -9223372036854775808) |
| (if (result i64) |
| (f64.ge |
| (get_local $0) |
| (f64.const 9223372036854775808) |
| ) |
| (i64.const -9223372036854775808) |
| (if (result i64) |
| (f64.le |
| (get_local $0) |
| (f64.const -9223372036854775808) |
| ) |
| (i64.const -9223372036854775808) |
| (i64.trunc_s/f64 |
| (get_local $0) |
| ) |
| ) |
| ) |
| ) |
| ) |
| (func $test64 |
| (local $0 i64) |
| (local $1 i64) |
| (local $2 i64) |
| (local $3 f32) |
| (local $4 f64) |
| (set_local $2 |
| (call $i64s-div |
| (block (result i64) |
| (set_local $2 |
| (i64.mul |
| (i64.sub |
| (i64.add |
| (tee_local $0 |
| (i64.const 128849018897) |
| ) |
| (i64.const 100) |
| ) |
| (get_local $0) |
| ) |
| (get_local $0) |
| ) |
| ) |
| (if (result i64) |
| (i64.eqz |
| (tee_local $1 |
| (get_local $0) |
| ) |
| ) |
| (i64.const 0) |
| (i64.div_u |
| (get_local $2) |
| (get_local $1) |
| ) |
| ) |
| ) |
| (get_local $0) |
| ) |
| ) |
| (set_local $1 |
| (if (result i64) |
| (i64.eqz |
| (tee_local $1 |
| (get_local $0) |
| ) |
| ) |
| (i64.const 0) |
| (i64.rem_u |
| (get_local $2) |
| (get_local $1) |
| ) |
| ) |
| ) |
| (drop |
| (if (result i64) |
| (i64.eqz |
| (get_local $0) |
| ) |
| (i64.const 0) |
| (i64.rem_s |
| (get_local $1) |
| (get_local $0) |
| ) |
| ) |
| ) |
| (drop |
| (i64.load |
| (i32.const 120) |
| ) |
| ) |
| (drop |
| (i64.load |
| (i32.const 120) |
| ) |
| ) |
| (drop |
| (i64.load align=2 |
| (i32.const 120) |
| ) |
| ) |
| (drop |
| (i64.load align=4 |
| (i32.const 120) |
| ) |
| ) |
| (i64.store |
| (i32.const 120) |
| (tee_local $0 |
| (i64.load |
| (i32.const 120) |
| ) |
| ) |
| ) |
| (i64.store |
| (i32.const 120) |
| (get_local $0) |
| ) |
| (i64.store align=2 |
| (i32.const 120) |
| (get_local $0) |
| ) |
| (i64.store align=4 |
| (i32.const 120) |
| (get_local $0) |
| ) |
| (i64.store |
| (i32.const 120) |
| (get_local $0) |
| ) |
| (drop |
| (call $f64-to-int64 |
| (f64.promote/f32 |
| (tee_local $3 |
| (f32.convert_u/i64 |
| (tee_local $0 |
| (i64.extend_u/i32 |
| (i32.wrap/i64 |
| (get_local $0) |
| ) |
| ) |
| ) |
| ) |
| ) |
| ) |
| ) |
| ) |
| (drop |
| (call $f64-to-int64 |
| (tee_local $4 |
| (f64.convert_u/i64 |
| (get_local $0) |
| ) |
| ) |
| ) |
| ) |
| (drop |
| (call $f64-to-int64 |
| (f64.promote/f32 |
| (get_local $3) |
| ) |
| ) |
| ) |
| (drop |
| (call $f64-to-int64 |
| (get_local $4) |
| ) |
| ) |
| ) |
| (func $imports (result i64) |
| (call $legalfunc$illegalImport |
| (f64.const -3.13159) |
| (i64.const 94489280523) |
| (i32.const -33) |
| ) |
| (call $legalfunc$illegalImportResult) |
| ) |
| (func $arg (param $0 i64) |
| (i64.store |
| (i32.const 100) |
| (get_local $0) |
| ) |
| (call $arg |
| (get_local $0) |
| ) |
| ) |
| (func $illegalParam (param $0 i32) (param $1 i64) (param $2 f64) |
| (i64.store |
| (i32.const 100) |
| (get_local $1) |
| ) |
| (call $illegalParam |
| (i32.const 0) |
| (get_local $1) |
| (f64.const 12.34) |
| ) |
| ) |
| (func $result (result i64) |
| (i64.const 8589934593) |
| ) |
| (func $call1 (param $0 i64) (result i64) |
| (call $call1 |
| (get_local $0) |
| ) |
| ) |
| (func $call2 (param $0 i64) (result i64) |
| (drop |
| (call $call2 |
| (call $call2 |
| (get_local $0) |
| ) |
| ) |
| ) |
| (i64.const 245127260211081) |
| ) |
| (func $returnCastConst (result i64) |
| (i64.const 0) |
| ) |
| (func $ifValue64 (param $0 i64) (param $1 i64) (result i64) |
| (call $call2 |
| (get_local $0) |
| ) |
| ) |
| (func $ifValue32 (param $0 i32) (param $1 i32) (result i32) |
| (call $ifValue32 |
| (get_local $0) |
| (get_local $1) |
| ) |
| ) |
| (func $switch64 (param $0 i64) (result i32) |
| (block $switch (result i32) |
| (block $switch-default |
| (block $switch-case0 |
| (block $switch-case |
| (br_if $switch-default |
| (i32.wrap/i64 |
| (i64.shr_u |
| (tee_local $0 |
| (i64.sub |
| (get_local $0) |
| (i64.const 42949672965) |
| ) |
| ) |
| (i64.const 32) |
| ) |
| ) |
| ) |
| (br_table $switch-case0 $switch-default $switch-case $switch-default |
| (i32.wrap/i64 |
| (get_local $0) |
| ) |
| ) |
| ) |
| (br $switch |
| (i32.const 11000) |
| ) |
| ) |
| (br $switch |
| (i32.const 10) |
| ) |
| ) |
| (i32.const 1) |
| ) |
| ) |
| (func $unreachable_leftovers (param $0 i32) (param $1 i32) (param $2 i32) |
| (block $__rjto$0 |
| (if |
| (i32.eqz |
| (get_local $1) |
| ) |
| (block |
| (br_if $__rjto$0 |
| (get_local $2) |
| ) |
| (i32.store |
| (get_local $0) |
| (i32.const -2) |
| ) |
| (return) |
| ) |
| ) |
| (i32.store |
| (get_local $0) |
| (i32.const -1) |
| ) |
| ) |
| ) |
| (func $switch64TOOMUCH (param $0 i64) (result i32) |
| (local $1 i32) |
| (local $2 i64) |
| (block $switch-default |
| (if |
| (i64.ne |
| (tee_local $2 |
| (get_local $0) |
| ) |
| (i64.const -9223372036854775808) |
| ) |
| (br_if $switch-default |
| (i64.ne |
| (get_local $2) |
| (i64.const 4611686018427387904) |
| ) |
| ) |
| ) |
| (return |
| (i32.const 40) |
| ) |
| ) |
| (block $switch-default4 |
| (if |
| (i32.ne |
| (tee_local $1 |
| (i32.const 100) |
| ) |
| (i32.const 214748364) |
| ) |
| (br_if $switch-default4 |
| (i32.ne |
| (get_local $1) |
| (i32.const 107374182) |
| ) |
| ) |
| ) |
| (return |
| (i32.const 41) |
| ) |
| ) |
| (block $switch5 |
| (if |
| (i64.ne |
| (get_local $0) |
| (i64.const -9223372036854775808) |
| ) |
| (br_if $switch5 |
| (i64.ne |
| (get_local $0) |
| (i64.const 4611686018427387904) |
| ) |
| ) |
| ) |
| (return |
| (i32.const 42) |
| ) |
| ) |
| (block $switch8 |
| (if |
| (i32.ne |
| (tee_local $1 |
| (i32.const 100) |
| ) |
| (i32.const 214748364) |
| ) |
| (br_if $switch8 |
| (i32.ne |
| (get_local $1) |
| (i32.const 107374182) |
| ) |
| ) |
| ) |
| (return |
| (i32.const 43) |
| ) |
| ) |
| (i32.const 44) |
| ) |
| (func $_memchr (param $0 i32) (param $1 i32) (param $2 i32) (result i32) |
| (local $3 i32) |
| (local $4 i32) |
| (local $5 i32) |
| (set_local $5 |
| (i32.and |
| (get_local $1) |
| (i32.const 255) |
| ) |
| ) |
| (block $label$break$L8 |
| (block $__rjti$2 |
| (if |
| (i32.and |
| (tee_local $4 |
| (i32.ne |
| (get_local $2) |
| (i32.const 0) |
| ) |
| ) |
| (i32.ne |
| (i32.and |
| (get_local $0) |
| (i32.const 3) |
| ) |
| (i32.const 0) |
| ) |
| ) |
| (block |
| (set_local $4 |
| (i32.and |
| (get_local $1) |
| (i32.const 255) |
| ) |
| ) |
| (set_local $3 |
| (get_local $2) |
| ) |
| (set_local $2 |
| (get_local $0) |
| ) |
| (loop $while-in |
| (br_if $__rjti$2 |
| (i32.eq |
| (i32.load8_u |
| (get_local $2) |
| ) |
| (i32.and |
| (get_local $4) |
| (i32.const 255) |
| ) |
| ) |
| ) |
| (br_if $while-in |
| (i32.and |
| (tee_local $0 |
| (i32.ne |
| (tee_local $3 |
| (i32.add |
| (get_local $3) |
| (i32.const -1) |
| ) |
| ) |
| (i32.const 0) |
| ) |
| ) |
| (i32.ne |
| (i32.and |
| (tee_local $2 |
| (i32.add |
| (get_local $2) |
| (i32.const 1) |
| ) |
| ) |
| (i32.const 3) |
| ) |
| (i32.const 0) |
| ) |
| ) |
| ) |
| ) |
| ) |
| (block |
| (set_local $3 |
| (get_local $2) |
| ) |
| (set_local $2 |
| (get_local $0) |
| ) |
| (set_local $0 |
| (get_local $4) |
| ) |
| ) |
| ) |
| (br_if $__rjti$2 |
| (get_local $0) |
| ) |
| (set_local $0 |
| (i32.const 0) |
| ) |
| (br $label$break$L8) |
| ) |
| (set_local $0 |
| (get_local $3) |
| ) |
| (if |
| (i32.ne |
| (i32.load8_u |
| (get_local $2) |
| ) |
| (tee_local $1 |
| (i32.and |
| (get_local $1) |
| (i32.const 255) |
| ) |
| ) |
| ) |
| (block |
| (set_local $3 |
| (i32.mul |
| (get_local $5) |
| (i32.const 16843009) |
| ) |
| ) |
| (block $__rjto$0 |
| (block $__rjti$0 |
| (br_if $__rjti$0 |
| (i32.le_u |
| (get_local $0) |
| (i32.const 3) |
| ) |
| ) |
| (loop $while-in3 |
| (if |
| (i32.eqz |
| (i32.and |
| (i32.xor |
| (i32.and |
| (tee_local $4 |
| (i32.xor |
| (i32.load |
| (get_local $2) |
| ) |
| (get_local $3) |
| ) |
| ) |
| (i32.const -2139062144) |
| ) |
| (i32.const -2139062144) |
| ) |
| (i32.add |
| (get_local $4) |
| (i32.const -16843009) |
| ) |
| ) |
| ) |
| (block |
| (set_local $2 |
| (i32.add |
| (get_local $2) |
| (i32.const 4) |
| ) |
| ) |
| (br_if $while-in3 |
| (i32.gt_u |
| (tee_local $0 |
| (i32.add |
| (get_local $0) |
| (i32.const -4) |
| ) |
| ) |
| (i32.const 3) |
| ) |
| ) |
| (br $__rjti$0) |
| ) |
| ) |
| ) |
| (br $__rjto$0) |
| ) |
| (if |
| (i32.eqz |
| (get_local $0) |
| ) |
| (block |
| (set_local $0 |
| (i32.const 0) |
| ) |
| (br $label$break$L8) |
| ) |
| ) |
| ) |
| (loop $while-in5 |
| (br_if $label$break$L8 |
| (i32.eq |
| (i32.load8_u |
| (get_local $2) |
| ) |
| (i32.and |
| (get_local $1) |
| (i32.const 255) |
| ) |
| ) |
| ) |
| (set_local $2 |
| (i32.add |
| (get_local $2) |
| (i32.const 1) |
| ) |
| ) |
| (br_if $while-in5 |
| (tee_local $0 |
| (i32.add |
| (get_local $0) |
| (i32.const -1) |
| ) |
| ) |
| ) |
| (set_local $0 |
| (i32.const 0) |
| ) |
| ) |
| ) |
| ) |
| ) |
| (select |
| (get_local $2) |
| (i32.const 0) |
| (get_local $0) |
| ) |
| ) |
| (func $switch64_big_condition1 (param $0 i64) |
| (local $1 i64) |
| (block $switch-default |
| (block $switch-case |
| (br_if $switch-default |
| (i32.wrap/i64 |
| (i64.shr_u |
| (tee_local $1 |
| (i64.sub |
| (get_local $0) |
| (i64.const 9218868437227405312) |
| ) |
| ) |
| (i64.const 32) |
| ) |
| ) |
| ) |
| (br_table $switch-case $switch-default |
| (i32.wrap/i64 |
| (get_local $1) |
| ) |
| ) |
| ) |
| (call $abort) |
| ) |
| ) |
| (func $keepAlive |
| (call $loads) |
| (call $loads) |
| (call $stores) |
| (call $stores) |
| (call $test) |
| (call $test) |
| (drop |
| (call $imports) |
| ) |
| (drop |
| (call $imports) |
| ) |
| (call $arg |
| (i64.const 0) |
| ) |
| (call $arg |
| (i64.const 0) |
| ) |
| (drop |
| (call $call1 |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $call1 |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $call2 |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $call2 |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $returnCastConst) |
| ) |
| (drop |
| (call $returnCastConst) |
| ) |
| (drop |
| (call $ifValue64 |
| (i64.const 0) |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $ifValue64 |
| (i64.const 0) |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $ifValue32 |
| (i32.const 0) |
| (i32.const 0) |
| ) |
| ) |
| (drop |
| (call $ifValue32 |
| (i32.const 0) |
| (i32.const 0) |
| ) |
| ) |
| (drop |
| (call $switch64 |
| (i64.const 0) |
| ) |
| ) |
| (drop |
| (call $switch64 |
| (i64.const 0) |
| ) |
| ) |
| (call $unreachable_leftovers |
| (i32.const 0) |
| (i32.const 0) |
| (i32.const 0) |
| ) |
| (call $unreachable_leftovers |
| (i32.const 0) |
| (i32.const 0) |
| (i32.const 0) |
| ) |
| (drop |
| (call $_memchr |
| (i32.const 0) |
| (i32.const 0) |
| (i32.const 0) |
| ) |
| ) |
| (drop |
| (call $switch64TOOMUCH |
| (i64.const 0) |
| ) |
| ) |
| (call $switch64_big_condition1 |
| (i64.const 0) |
| ) |
| (call $switch64_big_condition1 |
| (i64.const 0) |
| ) |
| ) |
| (func $legalstub$illegalParam (param $0 i32) (param $1 i32) (param $2 i32) (param $3 f64) |
| (call $illegalParam |
| (get_local $0) |
| (i64.or |
| (i64.extend_u/i32 |
| (get_local $1) |
| ) |
| (i64.shl |
| (i64.extend_u/i32 |
| (get_local $2) |
| ) |
| (i64.const 32) |
| ) |
| ) |
| (get_local $3) |
| ) |
| ) |
| (func $legalstub$result (result i32) |
| (local $0 i64) |
| (set_local $0 |
| (call $result) |
| ) |
| (set_global $tempRet0 |
| (i32.wrap/i64 |
| (i64.shr_u |
| (get_local $0) |
| (i64.const 32) |
| ) |
| ) |
| ) |
| (i32.wrap/i64 |
| (get_local $0) |
| ) |
| ) |
| (func $legalfunc$illegalImport (param $0 f64) (param $1 i64) (param $2 i32) |
| (call $legalimport$illegalImport |
| (get_local $0) |
| (i32.wrap/i64 |
| (get_local $1) |
| ) |
| (i32.wrap/i64 |
| (i64.shr_u |
| (get_local $1) |
| (i64.const 32) |
| ) |
| ) |
| (get_local $2) |
| ) |
| ) |
| (func $legalfunc$illegalImportResult (result i64) |
| (i64.or |
| (i64.extend_u/i32 |
| (call $legalimport$illegalImportResult) |
| ) |
| (i64.shl |
| (i64.extend_u/i32 |
| (get_global $tempRet0) |
| ) |
| (i64.const 32) |
| ) |
| ) |
| ) |
| (func $legalfunc$_fabsf (param $0 f32) (result f32) |
| (f32.demote/f64 |
| (call $legalimport$_fabsf |
| (f64.promote/f32 |
| (get_local $0) |
| ) |
| ) |
| ) |
| ) |
| (func $legalfunc$do_i64 (result i64) |
| (i64.or |
| (i64.extend_u/i32 |
| (call $legalimport$do_i64) |
| ) |
| (i64.shl |
| (i64.extend_u/i32 |
| (get_global $tempRet0) |
| ) |
| (i64.const 32) |
| ) |
| ) |
| ) |
| ) |