aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_lock_flags.h
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2019-02-25 11:48:14 +0100
committerBjörn Gustavsson <[email protected]>2019-02-28 12:18:24 +0100
commitcb2eb1766b5db1d5462a63025e99496ec8c6969b (patch)
tree3c0a5061f4bb9c5c1a66a615e237711424976572 /erts/emulator/beam/erl_lock_flags.h
parent72b503485b0d029f615c80c3e64680419cd690d9 (diff)
downloadotp-cb2eb1766b5db1d5462a63025e99496ec8c6969b.tar.gz
otp-cb2eb1766b5db1d5462a63025e99496ec8c6969b.tar.bz2
otp-cb2eb1766b5db1d5462a63025e99496ec8c6969b.zip
Tune move instructions
Of the `move_dup` instructions, only `move_dup x x x` was frequently used. Remove the other register combinations. With those instruction `move_dup` instructions removed, it is necessary to add new predicates to avoid unsafe translation to `move_shift` and `move2_par`. Also add additional transformations to transform more `move` instructions into `move2_par`. The existing transformation would require the `move` instructions to be in the "right" order in order to be transformed. Remove `move3 x y x y x y` because it turns out to be rarely executed.
Diffstat (limited to 'erts/emulator/beam/erl_lock_flags.h')
0 files changed, 0 insertions, 0 deletions