aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/hipe/hipe_stack.c
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2011-12-01 20:20:09 +0100
committerSverker Eriksson <[email protected]>2012-02-17 10:58:47 +0100
commit99c0207298251d5557335864f15547ca07a7b050 (patch)
tree989be0778ead12f4c413e957d10b8bba22a49a0b /erts/emulator/hipe/hipe_stack.c
parent02deff1b04a12be50e346c104e73a6841859d602 (diff)
downloadotp-99c0207298251d5557335864f15547ca07a7b050.tar.gz
otp-99c0207298251d5557335864f15547ca07a7b050.tar.bz2
otp-99c0207298251d5557335864f15547ca07a7b050.zip
hipe,erts: Add DEBUG support with MFA's in stack descriptors
Diffstat (limited to 'erts/emulator/hipe/hipe_stack.c')
-rw-r--r--erts/emulator/hipe/hipe_stack.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/erts/emulator/hipe/hipe_stack.c b/erts/emulator/hipe/hipe_stack.c
index da462a64e1..53c316ba52 100644
--- a/erts/emulator/hipe/hipe_stack.c
+++ b/erts/emulator/hipe/hipe_stack.c
@@ -130,7 +130,7 @@ struct sdesc *hipe_decode_sdesc(Eterm arg)
struct sdesc *sdesc;
if (is_not_tuple(arg) ||
- (tuple_val(arg))[0] != make_arityval(5) ||
+ (tuple_val(arg))[0] != make_arityval(6) ||
term_to_Uint((tuple_val(arg))[1], &ra) == 0 ||
term_to_Uint((tuple_val(arg))[2], &exnra) == 0 ||
is_not_small((tuple_val(arg))[3]) ||
@@ -183,5 +183,13 @@ struct sdesc *hipe_decode_sdesc(Eterm arg)
off = unsigned_val(live[i]);
sdesc->livebits[off / 32] |= (1 << (off & 31));
}
+#ifdef DEBUG
+ {
+ Eterm mfa_tpl = tuple_val(arg)[6];
+ sdesc->dbg_M = tuple_val(mfa_tpl)[1];
+ sdesc->dbg_F = tuple_val(mfa_tpl)[2];
+ sdesc->dbg_A = tuple_val(mfa_tpl)[3];
+ }
+#endif
return sdesc;
}