blob: bc50615cc82450bfcaf3c786d20721b43a27ee7b [file]
(module $M1
(type $#Top (struct
(field $field0 i32)))
(type $JSExternWrapper (sub $Object (struct
(field $field0 i32)
(field $field1 (mut i32))
(field $_externRef externref))))
(type $MyConstClass (sub final $Object (struct
(field $field0 i32)
(field $field1 (mut i32))
(field $b (ref $JSExternWrapper)))))
(type $Object (sub $#Top (struct
(field $field0 i32)
(field $field1 (mut i32)))))
(global $.h1-nonshared-const (import "" "h1-nonshared-const") (ref extern))
(global $.shared-const (import "" "shared-const") (ref extern))
(table $M.cross-module-funcs-0 (import "M" "cross-module-funcs-0") 17 funcref)
(global $"\"bad\"" (ref $JSExternWrapper) <...>)
(global $MyConstClass (ref $MyConstClass)
(i32.const 110)
(i32.const 0)
(i32.const 61)
(i32.const 0)
(global.get $.h1-nonshared-const)
(struct.new $JSExternWrapper)
(struct.new $MyConstClass))
(global $MyConstClass_15 (ref $MyConstClass)
(i32.const 110)
(i32.const 0)
(i32.const 61)
(i32.const 0)
(global.get $.shared-const)
(struct.new $JSExternWrapper)
(struct.new $MyConstClass))
(elem $M.cross-module-funcs-0
(set 0 (ref.func $int.parse))
(set 1 (ref.func $mainImpl))
(set 16 (ref.func $0)))
(func $null (result (ref $MyConstClass)) <...>)
(func $int.parse (result i64) <...>)
(@binaryen.inline 0)
(func $mainImpl (param $var0 i32)
i64.const 1
i32.const 2
call_indirect $M.cross-module-funcs-0 (param i64) (result i32)
drop
local.get $var0
i32.const 3
call_indirect $M.cross-module-funcs-0 (param i32) (result (ref $MyConstClass))
i64.const 2
i32.const 2
call_indirect $M.cross-module-funcs-0 (param i64) (result i32)
drop
local.get $var0
call $modH1Use
ref.eq
i32.eqz
if
global.get $"\"bad\""
i32.const 4
call_indirect $M.cross-module-funcs-0 (param (ref $#Top))
unreachable
end
)
(@binaryen.inline 0)
(func $modH1Use (param $var0 i32) (result (ref $MyConstClass))
global.get $MyConstClass
global.get $MyConstClass_15
local.get $var0
select (ref $MyConstClass)
)
)