diff options
-rw-r--r-- | erts/emulator/beam/ops.tab | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/erts/emulator/beam/ops.tab b/erts/emulator/beam/ops.tab index 0b2e2dca83..426cdef24d 100644 --- a/erts/emulator/beam/ops.tab +++ b/erts/emulator/beam/ops.tab @@ -376,16 +376,21 @@ i_put_tuple r I i_put_tuple x I i_put_tuple y I +# +# The instruction "put_list Const [] Dst" will not be generated by +# the current BEAM compiler. But until R15A, play it safe by handling +# that instruction with the following transformation. +# +put_list Const=c n Dst => move Const x | put_list x n Dst + %macro:put_list PutList -pack -gen_dest put_list x n x put_list y n x put_list x x x put_list y x x -put_list c n x put_list x x r put_list y r r -put_list c n r put_list y y x put_list x y x |