aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/beam_debug.c
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2017-09-09 12:30:35 +0200
committerBjörn Gustavsson <[email protected]>2017-09-14 10:16:15 +0200
commite8ee9f4cba07c7aa05685207c54ae1d773bf1814 (patch)
treee3d63c6080c85195339603853ae278a8d2cd5b84 /erts/emulator/beam/beam_debug.c
parent6f45ff73583aa7d0352b8a16df78872f47defd35 (diff)
downloadotp-e8ee9f4cba07c7aa05685207c54ae1d773bf1814.tar.gz
otp-e8ee9f4cba07c7aa05685207c54ae1d773bf1814.tar.bz2
otp-e8ee9f4cba07c7aa05685207c54ae1d773bf1814.zip
Pack failure labels in i_select_val2 and i_select_tuple_arity2
Diffstat (limited to 'erts/emulator/beam/beam_debug.c')
-rw-r--r--erts/emulator/beam/beam_debug.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/erts/emulator/beam/beam_debug.c b/erts/emulator/beam/beam_debug.c
index df152f1605..afde45ba71 100644
--- a/erts/emulator/beam/beam_debug.c
+++ b/erts/emulator/beam/beam_debug.c
@@ -679,6 +679,22 @@ print_op(fmtfn_t to, void *to_arg, int op, int size, BeamInstr* addr)
size += (n+1) / 2;
}
break;
+ case op_i_select_val2_xfcc:
+ case op_i_select_val2_yfcc:
+ case op_i_select_tuple_arity2_xfAA:
+ case op_i_select_tuple_arity2_yfAA:
+ {
+ Sint32* jump_tab = (Sint32 *) ap;
+ BeamInstr* target;
+ int i;
+
+ for (i = 0; i < 2; i++) {
+ target = f_to_addr_packed(addr, op, jump_tab++);
+ erts_print(to, to_arg, "f(" HEXF ") ", target);
+ }
+ size += 1;
+ }
+ break;
case op_i_jump_on_val_xfIW:
case op_i_jump_on_val_yfIW:
{