You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
816 B
33 lines
816 B
(module
|
|
(type $fd_write_ty (func (param i32 i32 i32 i32) (result i32)))
|
|
(import "wasi_snapshot_preview1" "fd_write" (func $fd_write (type $fd_write_ty)))
|
|
|
|
(func (export "double") (param i32) (result i32)
|
|
local.get 0
|
|
i32.const 2
|
|
i32.mul
|
|
)
|
|
|
|
(func (export "log") (param i32 i32)
|
|
;; store the pointer in the first iovec field
|
|
i32.const 4
|
|
local.get 0
|
|
i32.store
|
|
|
|
;; store the length in the first iovec field
|
|
i32.const 4
|
|
local.get 1
|
|
i32.store offset=4
|
|
|
|
;; call the `fd_write` import
|
|
i32.const 1 ;; stdout fd
|
|
i32.const 4 ;; iovs start
|
|
i32.const 1 ;; number of iovs
|
|
i32.const 0 ;; where to write nwritten bytes
|
|
call $fd_write
|
|
drop
|
|
)
|
|
|
|
(memory (export "memory") 2)
|
|
(global (export "memory_offset") i32 (i32.const 65536))
|
|
)
|
|
|