Extract portable AS to its own definition and polyfill; Try running flatten/ssa before default optimizations, see WebAssembly/binaryen#1331

This commit is contained in:
dcodeIO
2017-12-08 19:08:03 +01:00
parent d6b94d4c33
commit 0ebb99a33c
23 changed files with 1515 additions and 1231 deletions

View File

@ -5,11 +5,15 @@
(export "loopDoInDo" (func $do/loopDoInDo))
(export "memory" (memory $0))
(func $do/loopDo (; 0 ;) (type $iv) (param $0 i32)
(local $1 i32)
(set_local $1
(get_local $0)
)
(loop $continue|0
(br_if $continue|0
(tee_local $0
(tee_local $1
(i32.sub
(get_local $0)
(get_local $1)
(i32.const 1)
)
)
@ -17,8 +21,10 @@
)
)
(func $do/loopDoInDo (; 1 ;) (type $iv) (param $0 i32)
(local $1 i32)
(local $2 i32)
(loop $continue|0
(set_local $0
(set_local $1
(i32.sub
(get_local $0)
(i32.const 1)
@ -26,16 +32,20 @@
)
(loop $continue|1
(br_if $continue|1
(tee_local $0
(i32.sub
(get_local $0)
(i32.const 1)
(tee_local $2
(tee_local $1
(tee_local $0
(i32.sub
(get_local $1)
(i32.const 1)
)
)
)
)
)
)
(br_if $continue|0
(get_local $0)
(get_local $2)
)
)
)