summaryrefslogtreecommitdiff
path: root/test/wasm2js/i64-add-sub.2asm.js
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2019-02-26 17:47:28 -0800
committerAlon Zakai <alonzakai@gmail.com>2019-03-06 16:34:34 -0800
commit56fc114121716c672d4a16f92e8323eada557177 (patch)
treeb895d369688c3357a892bd93bfecac78d9b25db8 /test/wasm2js/i64-add-sub.2asm.js
parent8b5b85463cd5f5fcfec4d0bc6acb52f2acb30d79 (diff)
downloadbinaryen-56fc114121716c672d4a16f92e8323eada557177.tar.gz
binaryen-56fc114121716c672d4a16f92e8323eada557177.tar.bz2
binaryen-56fc114121716c672d4a16f92e8323eada557177.zip
Propagate a load/store offset even if locals are not in ssa form
The initial OptimizeAddedConstants pass did not try to handle the case of non-ssa locals. However, that can happen, and optimizing those cases too improves us by almost 1% of code size on some large benchmarks like bullet. How this works is that if we see b = a + 10 a = c load(b) then we copy the base value at the add, a' = a b = a' + 10 a = c load(a', offset=10) This no longer has a guarantee of improving code size, since in theory both b and a may have other uses. However, in practice it's very common for b to be optimized out later.
Diffstat (limited to 'test/wasm2js/i64-add-sub.2asm.js')
0 files changed, 0 insertions, 0 deletions