diff options
author | Alon Zakai <azakai@google.com> | 2022-10-07 10:31:05 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-07 10:31:05 -0700 |
commit | ada164df40f9b590f546dfecdddecc3894e345ae (patch) | |
tree | 8362af7aa04a83c700bdb1ca51b1311ca8a03ebf /src/passes/PostEmscripten.cpp | |
parent | d5aa6e7c070a7a14a6eb23edbe6343f6ee638e92 (diff) | |
download | binaryen-ada164df40f9b590f546dfecdddecc3894e345ae.tar.gz binaryen-ada164df40f9b590f546dfecdddecc3894e345ae.tar.bz2 binaryen-ada164df40f9b590f546dfecdddecc3894e345ae.zip |
GUFA: Use SSA-style information (#5121)
Previously we treated each local index as a location, and every local.set to
that index could be read by every local.get. With this we connect only
relevant sets to gets.
Practically speaking, this removes LocalLocation which is what was just
described, and instead there is ParamLocation for incoming parameter
values. And local.get/set use normal ExpressionLocations to connect a
set to a get.
I was worried this would be slow, since computing LocalGraph takes time,
but it actually more than makes up for itself on J2Wasm and we are faster
actually rocket I guess since we do less updating after local.sets.
This makes a noticeable change on the J2Wasm binary, and perhaps will
help with benchmarks.
Diffstat (limited to 'src/passes/PostEmscripten.cpp')
0 files changed, 0 insertions, 0 deletions