(module (type $none_=>_i32 (func (result i32))) (type $none_=>_i64 (func (result i64))) (type $i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32))) (type $none_=>_none (func)) (type $i32_=>_none (func (param i32))) (type $i32_i64_i64_=>_none (func (param i32 i64 i64))) (import "env" "ref-func-arg" (func $ref-func-arg (result i64))) (import "env" "setTempRet0" (func $setTempRet0 (param i32))) (import "env" "getTempRet0" (func $getTempRet0 (result i32))) (import "env" "imported" (func $legalimport$imported (result i32))) (import "env" "other" (func $legalimport$other (param i32 i32 i32 i32 i32))) (import "env" "ref-func-arg" (func $legalimport$ref-func-arg (result i32))) (export "func" (func $legalstub$func)) (export "ref-func-test" (func $ref-func-test)) (export "imported" (func $legalstub$imported)) (export "imported_again" (func $legalstub$imported)) (export "other" (func $legalstub$other)) (func $func (result i64) (drop (call $legalfunc$imported) ) (call $legalfunc$other (i32.const 0) (i64.const 0) (i64.const 0) ) (unreachable) ) (func $ref-func-test (drop (call $legalfunc$ref-func-arg) ) (drop (ref.func $ref-func-arg) ) ) (func $legalstub$func (result i32) (local $0 i64) (local.set $0 (call $func) ) (call $setTempRet0 (i32.wrap_i64 (i64.shr_u (local.get $0) (i64.const 32) ) ) ) (i32.wrap_i64 (local.get $0) ) ) (func $legalstub$imported (result i32) (local $0 i64) (local.set $0 (call $legalfunc$imported) ) (call $setTempRet0 (i32.wrap_i64 (i64.shr_u (local.get $0) (i64.const 32) ) ) ) (i32.wrap_i64 (local.get $0) ) ) (func $legalstub$other (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (call $legalfunc$other (local.get $0) (i64.or (i64.extend_i32_u (local.get $1) ) (i64.shl (i64.extend_i32_u (local.get $2) ) (i64.const 32) ) ) (i64.or (i64.extend_i32_u (local.get $3) ) (i64.shl (i64.extend_i32_u (local.get $4) ) (i64.const 32) ) ) ) ) (func $legalfunc$imported (result i64) (i64.or (i64.extend_i32_u (call $legalimport$imported) ) (i64.shl (i64.extend_i32_u (call $getTempRet0) ) (i64.const 32) ) ) ) (func $legalfunc$other (param $0 i32) (param $1 i64) (param $2 i64) (call $legalimport$other (local.get $0) (i32.wrap_i64 (local.get $1) ) (i32.wrap_i64 (i64.shr_u (local.get $1) (i64.const 32) ) ) (i32.wrap_i64 (local.get $2) ) (i32.wrap_i64 (i64.shr_u (local.get $2) (i64.const 32) ) ) ) ) (func $legalfunc$ref-func-arg (result i64) (i64.or (i64.extend_i32_u (call $legalimport$ref-func-arg) ) (i64.shl (i64.extend_i32_u (call $getTempRet0) ) (i64.const 32) ) ) ) ) (module )