summaryrefslogtreecommitdiff
path: root/src/lj_dispatch.c
diff options
context:
space:
mode:
authorMike Pall <mike>2010-02-15 18:04:06 +0100
committerMike Pall <mike>2010-02-15 18:04:06 +0100
commite1905f498a8436434b0c1fba2f68d34376be4cbd (patch)
tree62d5afd62f9b5d76ae9d039640ab2c8d4b72e205 /src/lj_dispatch.c
parent3452bfcf8cb2dc67819485c7b011e5c6a59310f8 (diff)
downloadluajit2-e1905f498a8436434b0c1fba2f68d34376be4cbd.tar.gz
Use a different marker for hot calls.
Diffstat (limited to 'src/lj_dispatch.c')
-rw-r--r--src/lj_dispatch.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lj_dispatch.c b/src/lj_dispatch.c
index f1579c8d..29b06438 100644
--- a/src/lj_dispatch.c
+++ b/src/lj_dispatch.c
@@ -409,8 +409,9 @@ ASMFunction LJ_FASTCALL lj_dispatch_call(lua_State *L, const BCIns *pc)
#endif
call_init(L, fn);
#if LJ_HASJIT
- if (J->L) { /* Marker for hot call. */
- lj_trace_hot(J, pc);
+ if ((uintptr_t)pc & 1) { /* Marker for hot call. */
+ J->L = L;
+ lj_trace_hot(J, (const BCIns *)((uintptr_t)pc & ~(uintptr_t)1));
goto out;
}
#endif