aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/beam_emu.c
diff options
context:
space:
mode:
authorPatrik Nyblom <[email protected]>2010-02-09 17:21:28 +0100
committerBjörn Gustavsson <[email protected]>2010-03-10 14:25:21 +0100
commitc591f7b2a78b44ab321d0b99c100b349c8606c15 (patch)
tree492533e735efed799bb8ddd427594835bd41e142 /erts/emulator/beam/beam_emu.c
parent64415f09de0691c2ccdf65df169a211b7917728b (diff)
downloadotp-c591f7b2a78b44ab321d0b99c100b349c8606c15.tar.gz
otp-c591f7b2a78b44ab321d0b99c100b349c8606c15.tar.bz2
otp-c591f7b2a78b44ab321d0b99c100b349c8606c15.zip
Make tracing and distribution work
Rewrite trace code and external coding. Also slightly correct the interface to the match-spec engine to make tracing work. That will make the test suites runnable.
Diffstat (limited to 'erts/emulator/beam/beam_emu.c')
-rw-r--r--erts/emulator/beam/beam_emu.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/erts/emulator/beam/beam_emu.c b/erts/emulator/beam/beam_emu.c
index 8113e78583..1078478ed9 100644
--- a/erts/emulator/beam/beam_emu.c
+++ b/erts/emulator/beam/beam_emu.c
@@ -2621,6 +2621,7 @@ void process_main(void)
SWAPOUT;
reg[0] = r(0);
+
next = call_fun(c_p, Arg(0), reg, THE_NON_VALUE);
SWAPIN;
if (next != NULL) {
@@ -6049,8 +6050,12 @@ call_fun(Process* p, /* Current process. */
}
}
} else if (is_export_header(hdr)) {
- Export* ep = *((Export **) (export_val(fun) + 1));
- int actual_arity = (int) ep->code[2];
+ Export *ep;
+ int actual_arity;
+
+ ep = *((Export **) (export_val(fun) + 1));
+ actual_arity = (int) ep->code[2];
+
if (arity == actual_arity) {
return ep->address;
} else {