diff options
author | Alon Zakai <alonzakai@gmail.com> | 2019-03-22 19:23:30 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-22 19:23:30 -0700 |
commit | 5d240dc566267ec1871df8b43e53cb56b2d2ff40 (patch) | |
tree | 33bf25c07bca7d5e22cb9a59b82a97c5566f9289 /src/passes/SSAify.cpp | |
parent | 08f9dc5341b9c698681a72805284ddc6fbfe6bae (diff) | |
download | binaryen-5d240dc566267ec1871df8b43e53cb56b2d2ff40.tar.gz binaryen-5d240dc566267ec1871df8b43e53cb56b2d2ff40.tar.bz2 binaryen-5d240dc566267ec1871df8b43e53cb56b2d2ff40.zip |
optimize-instructions after the last precompute-propagate (#1963)
A propagated constant can be helpful in the various patterns in optimize instructions.
Testcase shows an example of this in action - we can optimize out a load offset for a constant, but if we propagated it afterwards, we would miss that.
In general these two passes can help each other, so maybe they should be combined and run multiple iterations, but that's what --converge is for. Meanwhile this change improves us on what seems to be the more common case - guessed at by it being what I noticed in practice, and when I run the fuzzer, I see only this type of case.
Diffstat (limited to 'src/passes/SSAify.cpp')
0 files changed, 0 insertions, 0 deletions