(module
(func $fib (param $n i32) (result i32)
(local $a i32)
(local $b i32)
(local $t i32)
(local $i i32)
(local.set $a (i32.const 1))
(local.set $b (i32.const 1))
(local.set $i (i32.const 0))
(block $break
(loop $loop
(br_if $break (i32.ge_u (local.get $i) (local.get $n)))
(local.set $t (local.get $a))
(local.set $a (local.get $b))
(local.set $b (i32.add (local.get $b) (local.get $t)))
(local.set $i (i32.add (local.get $i) (i32.const 1)))
(br $loop)
)
)
(local.get $b)
)
(func (export "_start")
(local $i i32)
(local.set $i (i32.const 0))
(block $break
(loop $loop
(br_if $break (i32.ge_u (local.get $i) (i32.const 100000)))
(drop (call $fib (local.get $i)))
(local.set $i (i32.add (local.get $i) (i32.const 1)))
(br $loop)
)
)
)
)