Luke Gorrie
Luke Gorrie
First idea: Suppose that we extended `lua_State` with a parallel "immediate cdata stack" that contains unboxed immutable cdata values i.e. FFI pointers or 64-bit integers. This stack would have exactly...
> Now you are in a situation when a snapshot alone isn't enough to properly restore Lua stack. True. This approach would require extra snapshot-like bookkeeping. > I am also...
@mejedi Thanks for shooting that naïve idea down. Could we attack this problem during compilation instead of at runtime? Suppose that we have two linked traces `T1->T2` with a `CNEWI`...
Thanks for the notes @igelhaus! Do you think it is important to the design that traces only end on these particular points? I noticed an [assertion in trace_stop()](https://github.com/raptorjit/raptorjit/blob/master/src/lj_trace.c#L438) that will...
Yep. RaptorJIT always runs in "GC64" mode with full 64-bit pointers for Lua objects. This is equivalent to building LuaJIT v2.1 with `LJ_GC64=1`. This has been working well and stable...
Thanks for the PR @mingodad! Can you say a few words about what the conversion to ljs is about? The link is broken btw, I think you have a typo...
The [PC-losering](https://www.dreamsongs.com/WIB.html) problem just won't die eh :). I have a vague feeling that Linux signals can be setup to not interrupt system calls i.e. to defer the signal until...
Would it solve the problem to switch our [`setitimer(2)`](https://linux.die.net/man/2/setitimer) call from `ITIMER_PROF` to `ITIMER_VIRTUAL`? This should only profile the time spent running in userspace and a reasonable person might expect...
Great writeup! I have to read the JIT code and think about this but please indulge me in a hot-take :-) Is this just a bug in `lj_record.c`? If the...
I have been able to reproduce this with a minimal example over at raptorjit/raptorjit#203.