mirror of
https://github.com/fluencelabs/wasm-bindgen
synced 2025-04-25 14:12:13 +00:00
40 lines
785 B
Plaintext
40 lines
785 B
Plaintext
|
;; @xform export "foo" (i32 f32 f64 i64)
|
||
|
|
||
|
(module
|
||
|
(global (mut i32) (i32.const 0))
|
||
|
(memory 1)
|
||
|
|
||
|
(func $foo (export "foo") (param i32))
|
||
|
)
|
||
|
|
||
|
(; CHECK-ALL:
|
||
|
(module
|
||
|
(type (;0;) (func (result i32 f32 f64 i64)))
|
||
|
(type (;1;) (func (param i32)))
|
||
|
(func $foo multivalue shim (type 0) (result i32 f32 f64 i64)
|
||
|
(local i32)
|
||
|
global.get 0
|
||
|
i32.const 32
|
||
|
i32.sub
|
||
|
local.tee 0
|
||
|
global.set 0
|
||
|
local.get 0
|
||
|
call $foo
|
||
|
local.get 0
|
||
|
i32.load
|
||
|
local.get 0
|
||
|
f32.load offset=4
|
||
|
local.get 0
|
||
|
f64.load offset=8
|
||
|
local.get 0
|
||
|
i64.load offset=16
|
||
|
local.get 0
|
||
|
i32.const 32
|
||
|
i32.add
|
||
|
global.set 0)
|
||
|
(func $foo (type 1) (param i32))
|
||
|
(memory (;0;) 1)
|
||
|
(global (;0;) (mut i32) (i32.const 0))
|
||
|
(export "foo" (func $foo multivalue shim)))
|
||
|
;)
|