Skip to content

Commit 353807e

Browse files
authored
Update Binaryen to 98.0.0-nightly.20201030 / update pass pipeline (#1526)
1 parent c7ba137 commit 353807e

12 files changed

+1703
-1776
lines changed

package-lock.json

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"url": "https://github.com/AssemblyScript/assemblyscript/issues"
2222
},
2323
"dependencies": {
24-
"binaryen": "98.0.0-nightly.20201027",
24+
"binaryen": "98.0.0-nightly.20201030",
2525
"long": "^4.0.0",
2626
"source-map-support": "^0.5.19",
2727
"ts-node": "^6.2.0"

src/module.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -1530,12 +1530,13 @@ export class Module {
15301530
}
15311531
if (optimizeLevel >= 3) {
15321532
passes.push("flatten");
1533+
passes.push("vacuum");
15331534
passes.push("simplify-locals-notee-nostructure");
15341535
passes.push("merge-locals");
1535-
passes.push("vacuum");
15361536

15371537
passes.push("code-folding");
15381538
passes.push("flatten");
1539+
passes.push("vacuum");
15391540
passes.push("local-cse");
15401541
passes.push("reorder-locals");
15411542
}
@@ -1550,8 +1551,8 @@ export class Module {
15501551
if (optimizeLevel >= 3 || shrinkLevel >= 1) {
15511552
passes.push("dce");
15521553
}
1553-
passes.push("remove-unused-brs");
15541554
passes.push("remove-unused-names");
1555+
passes.push("remove-unused-brs");
15551556
if (optimizeLevel >= 3 || shrinkLevel >= 2) {
15561557
passes.push("inlining");
15571558
passes.push("precompute-propagate");

tests/compiler/extends-baseaggregate.optimized.wat

+36-48
Original file line numberDiff line numberDiff line change
@@ -2074,10 +2074,45 @@
20742074
unreachable
20752075
end
20762076
)
2077-
(func $~lib/array/Array<extends-baseaggregate/B1>#__visit_impl (param $0 i32) (param $1 i32)
2077+
(func $~lib/rt/__visit_members (param $0 i32) (param $1 i32)
20782078
(local $2 i32)
20792079
(local $3 i32)
20802080
(local $4 i32)
2081+
block $folding-inner0
2082+
block $switch$1$default
2083+
block $switch$1$case$6
2084+
block $switch$1$case$4
2085+
block $switch$1$case$2
2086+
local.get $0
2087+
i32.const 8
2088+
i32.sub
2089+
i32.load
2090+
br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$6 $switch$1$case$4 $switch$1$case$6 $folding-inner0 $folding-inner0 $switch$1$default
2091+
end
2092+
return
2093+
end
2094+
local.get $0
2095+
i32.load
2096+
local.tee $0
2097+
if
2098+
local.get $0
2099+
local.get $1
2100+
call $~lib/rt/pure/__visit
2101+
end
2102+
return
2103+
end
2104+
local.get $0
2105+
i32.load offset=16
2106+
local.tee $0
2107+
if
2108+
local.get $0
2109+
local.get $1
2110+
call $~lib/rt/pure/__visit
2111+
end
2112+
return
2113+
end
2114+
unreachable
2115+
end
20812116
local.get $0
20822117
i32.load offset=4
20832118
local.tee $2
@@ -2112,51 +2147,4 @@
21122147
local.get $1
21132148
call $~lib/rt/pure/__visit
21142149
)
2115-
(func $~lib/rt/__visit_members (param $0 i32) (param $1 i32)
2116-
block $switch$1$default
2117-
block $switch$1$case$10
2118-
block $switch$1$case$9
2119-
block $switch$1$case$6
2120-
block $switch$1$case$4
2121-
block $switch$1$case$2
2122-
local.get $0
2123-
i32.const 8
2124-
i32.sub
2125-
i32.load
2126-
br_table $switch$1$case$2 $switch$1$case$2 $switch$1$case$4 $switch$1$case$4 $switch$1$case$6 $switch$1$case$4 $switch$1$case$6 $switch$1$case$9 $switch$1$case$10 $switch$1$default
2127-
end
2128-
return
2129-
end
2130-
local.get $0
2131-
i32.load
2132-
local.tee $0
2133-
if
2134-
local.get $0
2135-
local.get $1
2136-
call $~lib/rt/pure/__visit
2137-
end
2138-
return
2139-
end
2140-
local.get $0
2141-
i32.load offset=16
2142-
local.tee $0
2143-
if
2144-
local.get $0
2145-
local.get $1
2146-
call $~lib/rt/pure/__visit
2147-
end
2148-
return
2149-
end
2150-
local.get $0
2151-
local.get $1
2152-
call $~lib/array/Array<extends-baseaggregate/B1>#__visit_impl
2153-
return
2154-
end
2155-
local.get $0
2156-
local.get $1
2157-
call $~lib/array/Array<extends-baseaggregate/B1>#__visit_impl
2158-
return
2159-
end
2160-
unreachable
2161-
)
21622150
)

0 commit comments

Comments
 (0)