summaryrefslogtreecommitdiff
path: root/erts/emulator/beam/beam_debug.c
diff options
context:
space:
mode:
authorBjörn Gustavsson <bjorn@erlang.org>2017-09-07 17:51:43 +0200
committerBjörn Gustavsson <bjorn@erlang.org>2017-09-14 10:16:15 +0200
commita8e391f3baf2cfbcfa57e46d4cfe95c089921100 (patch)
tree7e443b378e6b2b818d802028c0a44629ac9d344e /erts/emulator/beam/beam_debug.c
parentcfe29c3386477b76a1daf4d631b1178dc7359a40 (diff)
downloaderlang-a8e391f3baf2cfbcfa57e46d4cfe95c089921100.tar.gz
Rewrite select_val_bins so that its labels can be packed
Diffstat (limited to 'erts/emulator/beam/beam_debug.c')
-rw-r--r--erts/emulator/beam/beam_debug.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/erts/emulator/beam/beam_debug.c b/erts/emulator/beam/beam_debug.c
index 9ba65e2464..df152f1605 100644
--- a/erts/emulator/beam/beam_debug.c
+++ b/erts/emulator/beam/beam_debug.c
@@ -632,6 +632,8 @@ print_op(fmtfn_t to, void *to_arg, int op, int size, BeamInstr* addr)
switch (op) {
case op_i_select_val_lins_xfI:
case op_i_select_val_lins_yfI:
+ case op_i_select_val_bins_xfI:
+ case op_i_select_val_bins_yfI:
{
int n = ap[-1];
int ix = n;
@@ -651,20 +653,6 @@ print_op(fmtfn_t to, void *to_arg, int op, int size, BeamInstr* addr)
size += (n+1) / 2;
}
break;
- case op_i_select_val_bins_xfI:
- case op_i_select_val_bins_yfI:
- {
- int n = ap[-1];
-
- while (n > 0) {
- BeamInstr* target = f_to_addr(addr, op, ap+1);
- erts_print(to, to_arg, "%T f(" HEXF ") ", (Eterm) ap[0], target);
- ap += 2;
- size += 2;
- n--;
- }
- }
- break;
case op_i_select_tuple_arity_xfI:
case op_i_select_tuple_arity_yfI:
{