diff options
author | Björn Gustavsson <[email protected]> | 2016-04-07 15:29:06 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2016-04-07 15:29:06 +0200 |
commit | 5b15c7747c38defc3d7c5ee2e9de58b9f2fed535 (patch) | |
tree | 9bb6309673cd45a37fe513c0dfa72fff4cda544e /erts/emulator/beam/ops.tab | |
parent | 181171aa5ed3a1e7426275abe5ca30bb0db3a731 (diff) | |
parent | 921c838b8142d3c8d1739c6b30c6d88e39e5f147 (diff) | |
download | otp-5b15c7747c38defc3d7c5ee2e9de58b9f2fed535.tar.gz otp-5b15c7747c38defc3d7c5ee2e9de58b9f2fed535.tar.bz2 otp-5b15c7747c38defc3d7c5ee2e9de58b9f2fed535.zip |
Merge branch 'bjorn/erts/beam_load'
* bjorn/erts/beam_load:
Eliminate unnecessary renaming of bs_put_utf16/3
Don't let the loader do the compiler's job
Remove unused variables after code generation
Avoid rebuilding unchanged instructions
Introduce a 'rename' instruction
Simplify window management for the transformation engine
Eliminate allocation of variables in transform_engine()
Refactor calls to transform_engine()
ops.tab: Remove useless transformation
Diffstat (limited to 'erts/emulator/beam/ops.tab')
-rw-r--r-- | erts/emulator/beam/ops.tab | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/erts/emulator/beam/ops.tab b/erts/emulator/beam/ops.tab index 772460c177..15f27835a8 100644 --- a/erts/emulator/beam/ops.tab +++ b/erts/emulator/beam/ops.tab @@ -181,11 +181,6 @@ i_jump_on_val_zero y f I i_jump_on_val x f I I i_jump_on_val y f I I -jump Target | label Lbl | same_label(Target, Lbl) => label Lbl - -is_ne_exact L1 S1 S2 | jump Fail | label L2 | same_label(L1, L2) => \ - is_eq_exact Fail S1 S2 | label L2 - %macro: get_list GetList -pack get_list x x x get_list x x y @@ -1355,9 +1350,7 @@ bs_put_utf8 Fail u Src=s => i_bs_put_utf8 Fail Src i_bs_put_utf8 j s -bs_put_utf16 Fail Flags=u Src=s => i_bs_put_utf16 Fail Flags Src - -i_bs_put_utf16 j I s +bs_put_utf16 j I s bs_put_utf32 Fail=j Flags=u Src=s => \ i_bs_validate_unicode Fail Src | bs_put_integer Fail i=32 u=1 Flags Src @@ -1539,7 +1532,6 @@ gen_minus p Live Reg=d Int=i Dst | negation_is_small(Int) => \ # GCing arithmetic instructions. # -gen_plus Fail Live Y=y X=x Dst => i_plus Fail Live X Y Dst gen_plus Fail Live S1 S2 Dst => i_plus Fail Live S1 S2 Dst gen_minus Fail Live S1 S2 Dst => i_minus Fail Live S1 S2 Dst |