Rework loop compilation / flows (#644)

This commit is contained in:
Daniel Wirtz
2019-06-11 12:52:16 +02:00
committed by GitHub
parent 420812f5b2
commit 40dac8269d
125 changed files with 52818 additions and 61256 deletions

View File

@@ -11,46 +11,41 @@
(start $start)
(func $switch/doSwitch (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32)
block $break|0
block $case4|0
block $case3|0
block $case2|0
block $case1|0
block $case0|0
local.get $0
local.set $1
local.get $1
i32.const 1
i32.eq
br_if $case0|0
local.get $1
i32.const 0
i32.eq
br_if $case1|0
local.get $1
i32.const 2
i32.eq
br_if $case3|0
local.get $1
i32.const 3
i32.eq
br_if $case4|0
br $case2|0
end
block $case4|0
block $case3|0
block $case2|0
block $case1|0
block $case0|0
local.get $0
local.set $1
local.get $1
i32.const 1
return
i32.eq
br_if $case0|0
local.get $1
i32.const 0
i32.eq
br_if $case1|0
local.get $1
i32.const 2
i32.eq
br_if $case3|0
local.get $1
i32.const 3
i32.eq
br_if $case4|0
br $case2|0
end
i32.const 1
return
end
i32.const 0
return
end
i32.const 0
return
end
i32.const 23
return
unreachable
end
unreachable
unreachable
i32.const 23
return
)
(func $switch/doSwitchDefaultOmitted (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32)
@@ -125,39 +120,35 @@
)
(func $switch/doSwitchFallThroughCase (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32)
block $break|0
block $case1|0
block $case0|0
local.get $0
local.set $1
local.get $1
i32.const 1
i32.eq
br_if $case1|0
br $case0|0
end
i32.const 2
return
block $case1|0
block $case0|0
local.get $0
local.set $1
local.get $1
i32.const 1
i32.eq
br_if $case1|0
br $case0|0
end
i32.const 2
return
end
i32.const 1
)
(func $switch/doSwitchFallThroughDefault (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32)
block $break|0
block $case1|0
block $case0|0
local.get $0
local.set $1
local.get $1
i32.const 1
i32.eq
br_if $case0|0
br $case1|0
end
block $case1|0
block $case0|0
local.get $0
local.set $1
local.get $1
i32.const 1
return
i32.eq
br_if $case0|0
br $case1|0
end
i32.const 1
return
end
i32.const 2
)