mirror of
https://github.com/fluencelabs/wasmer
synced 2024-12-15 15:15:40 +00:00
21 lines
689 B
Plaintext
21 lines
689 B
Plaintext
|
(module
|
||
|
(func $even (export "even") (param $n i32) (result i32)
|
||
|
(if (result i32) (i32.eq (get_local $n) (i32.const 0))
|
||
|
(then (i32.const 1))
|
||
|
(else (call $odd (i32.sub (get_local $n) (i32.const 1))))
|
||
|
)
|
||
|
)
|
||
|
|
||
|
(func $odd (export "odd") (param $n i32) (result i32)
|
||
|
(if (result i32) (i32.eq (get_local $n) (i32.const 0))
|
||
|
(then (i32.const 0))
|
||
|
(else (call $even (i32.sub (get_local $n) (i32.const 1))))
|
||
|
)
|
||
|
)
|
||
|
)
|
||
|
|
||
|
(assert_return (invoke "even" (i32.const 13)) (i32.const 0))
|
||
|
(assert_return (invoke "even" (i32.const 20)) (i32.const 1))
|
||
|
(assert_return (invoke "odd" (i32.const 13)) (i32.const 1))
|
||
|
(assert_return (invoke "odd" (i32.const 20)) (i32.const 0))
|