Built-in abs/min/max for integers; For-loop fixes

This commit is contained in:
dcodeIO
2017-12-05 22:47:20 +01:00
parent 81844a1fe7
commit f045975a4b
16 changed files with 1273 additions and 403 deletions

View File

@ -7,36 +7,15 @@
(export "doSwitchDefaultOmitted" (func $switch/doSwitchDefaultOmitted))
(export "memory" (memory $0))
(func $switch/doSwitch (; 0 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
(block $case4$1.1
(block $case2$1.1
(if
(i32.ne
(tee_local $1
(block $case0$1.1
(block $tablify|0
(br_table $case2$1.1 $case0$1.1 $case4$1.1 $case4$1.1 $tablify|0
(get_local $0)
)
(i32.const 1)
)
(block
(br_if $case2$1.1
(i32.eqz
(get_local $1)
)
)
(br_if $case4$1.1
(i32.eq
(get_local $1)
(i32.const 2)
)
)
(br_if $case4$1.1
(i32.eq
(get_local $1)
(i32.const 3)
)
)
(br $case2$1.1)
)
(br $case2$1.1)
)
(return
(i32.const 1)
@ -49,31 +28,18 @@
(i32.const 23)
)
(func $switch/doSwitchDefaultFirst (; 1 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
(block $case3$1.1
(if
(i32.ne
(tee_local $1
(get_local $0)
(block $case1$1.1
(block $tablify|0
(br_table $case1$1.1 $case3$1.1 $case3$1.1 $tablify|0
(i32.sub
(get_local $0)
(i32.const 1)
)
)
(i32.const 1)
)
(block
(br_if $case3$1.1
(i32.eq
(get_local $1)
(i32.const 2)
)
)
(br_if $case3$1.1
(i32.eq
(get_local $1)
(i32.const 3)
)
)
(return
(i32.const 0)
)
(return
(i32.const 0)
)
)
(return
@ -83,31 +49,18 @@
(i32.const 23)
)
(func $switch/doSwitchDefaultOmitted (; 2 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
(block $break$1.1
(block $case2$1.1
(if
(i32.ne
(tee_local $1
(get_local $0)
)
(i32.const 1)
)
(block
(br_if $case2$1.1
(i32.eq
(get_local $1)
(i32.const 2)
(block $case0$1.1
(block $tablify|0
(br_table $case0$1.1 $case2$1.1 $case2$1.1 $tablify|0
(i32.sub
(get_local $0)
(i32.const 1)
)
)
(br_if $case2$1.1
(i32.eq
(get_local $1)
(i32.const 3)
)
)
(br $break$1.1)
)
(br $break$1.1)
)
(return
(i32.const 1)