blob: c217eb4f09eb0a09033f8f5ad299c7adebdb3348 [file]
(module $M
(type $#Top (struct
(field $field0 i32)))
(type $BoxedDouble (sub final $#Top (struct
(field $field0 i32)
(field $value f64))))
(func $"dart2wasm.M (import)" (import "dart2wasm" "M") (param f64) (result externref))
(func $"dart2wasm.N (import)" (import "dart2wasm" "N") (param externref) (result externref))
(func $"dart2wasm.R (import)" (import "dart2wasm" "R") (param f64) (result externref))
(global $"doubleValueNullable initialized" (mut i32) <...>)
(global $doubleValueNullable (mut (ref null $BoxedDouble)) <...>)
(func $doubleValue implicit getter (result f64) <...>)
(func $ktrue implicit getter (result i32) <...>)
(func $sinkDouble (param $var0 f64) <...>)
(func $sinkDoubleNullable (param $var0 (ref null $BoxedDouble)) <...>)
(@binaryen.inline 0)
(func $testDoubleConstant
f64.const 1.1
call $"dart2wasm.R (import)"
call $toDartDouble
call $sinkDouble
)
(@binaryen.inline 0)
(func $testDoubleConstantNullable
ref.null noextern
call $"dart2wasm.N (import)"
call $toDartNullableDouble
call $sinkDoubleNullable
)
(@binaryen.inline 0)
(func $testDoubleValue
call $"doubleValue implicit getter"
call $"dart2wasm.R (import)"
call $toDartDouble
call $sinkDouble
)
(@binaryen.inline 0)
(func $testDoubleValueNullable
(local $var0 (ref null $BoxedDouble))
global.get $"doubleValueNullable initialized"
if (result (ref null $BoxedDouble))
global.get $doubleValueNullable
else
call $"ktrue implicit getter"
if (result (ref null $BoxedDouble))
i32.const 93
call $"doubleValue implicit getter"
struct.new $BoxedDouble
else
ref.null none
end
local.tee $var0
global.set $doubleValueNullable
i32.const 1
global.set $"doubleValueNullable initialized"
local.get $var0
end
local.tee $var0
ref.is_null
if (result externref)
ref.null noextern
else
local.get $var0
struct.get $BoxedDouble $value
call $"dart2wasm.M (import)"
end
call $"dart2wasm.N (import)"
call $toDartNullableDouble
call $sinkDoubleNullable
)
(func $toDartDouble (param $var0 externref) (result f64) <...>)
(func $toDartNullableDouble (param $var0 externref) (result (ref null $BoxedDouble)) <...>)
)