summaryrefslogtreecommitdiff
path: root/src/lj_trace.c
diff options
context:
space:
mode:
authorMike Pall <mike>2016-05-22 23:40:37 +0200
committerMike Pall <mike>2016-05-22 23:40:37 +0200
commit3152ed98ea3d99579940eb5e72da687ce66792de (patch)
treedcd8b8dec22f0d1d0a9ad3e30fcaefc4f288e3f2 /src/lj_trace.c
parenta657fa01869e63508afce88cc8088c3d2e2fb47c (diff)
downloadluajit-3152ed98ea3d99579940eb5e72da687ce66792de.tar.gz
luajit-3152ed98ea3d99579940eb5e72da687ce66792de.tar.bz2
luajit-3152ed98ea3d99579940eb5e72da687ce66792de.zip
Simplify GCtrace * reference embedding for trace stitching.
This is now possible due to the immovable IR. Contributed by Peter Cawley.
Diffstat (limited to 'src/lj_trace.c')
-rw-r--r--src/lj_trace.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/lj_trace.c b/src/lj_trace.c
index 19ddba41..eaf9365c 100644
--- a/src/lj_trace.c
+++ b/src/lj_trace.c
@@ -436,7 +436,7 @@ static void trace_start(jit_State *J)
436 J->postproc = LJ_POST_NONE; 436 J->postproc = LJ_POST_NONE;
437 lj_resetsplit(J); 437 lj_resetsplit(J);
438 J->retryrec = 0; 438 J->retryrec = 0;
439 J->ktracep = NULL; 439 J->ktrace = 0;
440 setgcref(J->cur.startpt, obj2gco(J->pt)); 440 setgcref(J->cur.startpt, obj2gco(J->pt));
441 441
442 L = J->L; 442 L = J->L;
@@ -512,9 +512,6 @@ static void trace_stop(jit_State *J)
512 lj_mcode_commit(J, J->cur.mcode); 512 lj_mcode_commit(J, J->cur.mcode);
513 J->postproc = LJ_POST_NONE; 513 J->postproc = LJ_POST_NONE;
514 trace_save(J, T); 514 trace_save(J, T);
515 if (J->ktracep) { /* Patch K64Array slot with the final GCtrace pointer. */
516 setgcV(J->L, J->ktracep, obj2gco(T), LJ_TTRACE);
517 }
518 515
519 L = J->L; 516 L = J->L;
520 lj_vmevent_send(L, TRACE, 517 lj_vmevent_send(L, TRACE,