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.
29 lines
508 B
29 lines
508 B
5 years ago
|
(module
|
||
|
(func $gcd (param i32 i32) (result i32)
|
||
|
(local i32)
|
||
|
block ;; label = @1
|
||
|
block ;; label = @2
|
||
|
local.get 0
|
||
|
br_if 0 (;@2;)
|
||
|
local.get 1
|
||
|
local.set 2
|
||
|
br 1 (;@1;)
|
||
|
end
|
||
|
loop ;; label = @2
|
||
|
local.get 1
|
||
|
local.get 0
|
||
|
local.tee 2
|
||
|
i32.rem_u
|
||
|
local.set 0
|
||
|
local.get 2
|
||
|
local.set 1
|
||
|
local.get 0
|
||
|
br_if 0 (;@2;)
|
||
|
end
|
||
|
end
|
||
|
local.get 2
|
||
|
)
|
||
|
(export "gcd" (func $gcd))
|
||
|
)
|
||
|
|