aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2018-09-20 04:23:12 +0200
committerBjörn Gustavsson <[email protected]>2018-09-26 12:19:56 +0200
commit60d4e673149aaa34e977e42aabeef3efd4b7c34e (patch)
tree8f8cae8c43a56876625c117fe3ae1b2f93ad2fbd /scripts
parent08ef38b2c9f84ed118e693bff38efa69fc2c7eb8 (diff)
downloadotp-60d4e673149aaa34e977e42aabeef3efd4b7c34e.tar.gz
otp-60d4e673149aaa34e977e42aabeef3efd4b7c34e.tar.bz2
otp-60d4e673149aaa34e977e42aabeef3efd4b7c34e.zip
Move optimization of 'move' from beam_flatten to beam_ssa_codegen
The purpose of beam_flatten is to eliminate the blocks created by beam_block, but it also does a few optimizations because at the time the optimizations were added, beam_flatten was the most convenient place. Move the optimization that places `{move,Something,{x,0}}` before `call` instructions from beam_flatten to beam_ssa_codegen. This change will very slightly improve compilation times, and it will also apply the optimization in more places. In particular, a `{move,Literal,{x,0}}` would never be moved passed a `trim` instruction before this change. Now it will.
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions