summaryrefslogtreecommitdiff
path: root/libguile/vm-engine.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/vm-engine.c')
-rw-r--r--libguile/vm-engine.c29
1 files changed, 11 insertions, 18 deletions
diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c
index 9789fc82d..8dc5c00c1 100644
--- a/libguile/vm-engine.c
+++ b/libguile/vm-engine.c
@@ -472,8 +472,8 @@ VM_NAME (scm_thread *thread)
if (mcode)
{
- ip = scm_jit_enter_mcode (thread, mcode);
- CACHE_SP ();
+ scm_jit_enter_mcode (thread, mcode);
+ CACHE_REGISTER ();
NEXT (0);
}
}
@@ -682,8 +682,8 @@ VM_NAME (scm_thread *thread)
if (mcode)
{
- ip = scm_jit_enter_mcode (thread, mcode);
- CACHE_SP ();
+ scm_jit_enter_mcode (thread, mcode);
+ CACHE_REGISTER ();
NEXT (0);
}
else
@@ -716,8 +716,8 @@ VM_NAME (scm_thread *thread)
if (mcode)
{
- ip = scm_jit_enter_mcode (thread, mcode);
- CACHE_SP ();
+ scm_jit_enter_mcode (thread, mcode);
+ CACHE_REGISTER ();
NEXT (0);
}
}
@@ -735,12 +735,11 @@ VM_NAME (scm_thread *thread)
VM_DEFINE_OP (15, capture_continuation, "capture-continuation", DOP1 (X8_S24))
{
uint32_t dst;
- uint8_t *mra = NULL;
UNPACK_24 (op, dst);
SYNC_IP ();
- SP_SET (dst, CALL_INTRINSIC (capture_continuation, (thread, mra)));
+ SP_SET (dst, CALL_INTRINSIC (capture_continuation, (thread)));
NEXT (1);
}
@@ -769,16 +768,10 @@ VM_NAME (scm_thread *thread)
ABORT_CONTINUATION_HOOK ();
if (mcode)
- {
- ip = scm_jit_enter_mcode (thread, mcode);
- CACHE_SP ();
- NEXT (0);
- }
- else
- {
- CACHE_REGISTER ();
- NEXT (0);
- }
+ scm_jit_enter_mcode (thread, mcode);
+
+ CACHE_REGISTER ();
+ NEXT (0);
}
/* builtin-ref dst:12 idx:12