blob: 43a297a08499f245fdeecf8e44553d0f525cdad3 [file]
(module $M
(type $"ImmutableArray<WasmFunction<WasmVoid Function()>>" (array (field (ref $type0))))
(type $#Closure-0-1 <...>)
(type $#Top <...>)
(type $#Vtable-0-1 <...>)
(type $BoxedInt <...>)
(type $JSExternWrapper <...>)
(type $type0 <...>)
(type $type2 <...>)
(func $"outside.registerCallback (import)" (import "outside" "registerCallback") (param (ref $type0)))
(func $"outside.registerCallbacks (import)" (import "outside" "registerCallbacks") (param (ref $"ImmutableArray<WasmFunction<WasmVoid Function()>>")))
(global $"\" instead.\"" (ref $JSExternWrapper) <...>)
(global $"\"Hello\"" (ref $JSExternWrapper) <...>)
(global $"\"Too few arguments passed. Expe<...>\"" (ref $JSExternWrapper) <...>)
(global $"jsCallback1 tear-off" (ref $#Closure-0-1) <...>)
(global $"jsCallback2 tear-off" (ref $#Closure-0-1) <...>)
(func $Error._throwWithCurrentStackTrace (param $var0 (ref $#Top)) <...>)
(func $JSStringImpl._interpolate3 (param $var0 (ref $JSExternWrapper)) (param $var1 (ref $#Top)) (param $var2 (ref $JSExternWrapper)) (result (ref $JSExternWrapper)) <...>)
(func $JSValue.box (param $var0 externref) (result (ref null $JSExternWrapper)) <...>)
(@binaryen.js.called)
(func $_JS_Trampoline_FunctionToJSExportedDartFunction|get#toJS_16 (param $var0 (ref extern)) (param $var1 i32) (param $var2 (ref extern)) (param $var3 externref) (result externref)
(local $var4 (ref $#Closure-0-1))
(local $var5 i64)
local.get $var1
i64.extend_i32_s
local.tee $var5
i64.const 0
i64.gt_s
if
local.get $var2
any.convert_extern
ref.cast $#Closure-0-1
local.tee $var4
struct.get $#Closure-0-1 $context
local.get $var3
call $JSValue.box
local.get $var4
struct.get $#Closure-0-1 $vtable
struct.get $#Vtable-0-1 $closureCallEntry-0-1
call_ref $type2
drop
end
local.get $var5
i64.const 0
i64.gt_s
if
local.get $var0
any.convert_extern
ref.cast $#Closure-0-1
local.tee $var4
struct.get $#Closure-0-1 $context
local.get $var3
call $JSValue.box
local.get $var4
struct.get $#Closure-0-1 $vtable
struct.get $#Vtable-0-1 $closureCallEntry-0-1
call_ref $type2
drop
ref.null noextern
return
end
global.get $"\"Too few arguments passed. Expe<...>\""
i32.const 59
local.get $var5
struct.new $BoxedInt
global.get $"\" instead.\""
call $JSStringImpl._interpolate3
call $Error._throwWithCurrentStackTrace
unreachable
)
(@binaryen.js.called)
(func $dartFunction
global.get $"\"Hello\""
call $print
)
(func $makeJsCallback (param $var0 (ref $#Closure-0-1)) (result (ref $JSExternWrapper)) <...>)
(func $print (param $var0 (ref $#Top)) <...>)
(@binaryen.inline 0)
(func $runTest
ref.func $dartFunction
call $"outside.registerCallback (import)"
ref.func $dartFunction
array.new_fixed $"ImmutableArray<WasmFunction<WasmVoid Function()>>" 1
call $"outside.registerCallbacks (import)"
global.get $"jsCallback1 tear-off"
call $makeJsCallback
call $print
global.get $"jsCallback2 tear-off"
call $makeJsCallback
call $print
)
)