<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Mar 31, 2015 at 3:31 PM, Dibyendu Majumdar <span dir="ltr"><<a href="mailto:mobile@majumdar.org.uk" target="_blank">mobile@majumdar.org.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I constructed a minimal Lua program that reproduces the problem.<br>
Essentially the problem occurs if a JITed function is recursively<br>
called - and there is a longjmp from the inner call. Example:<br>
<br>
function rais(n)<br>
  if n == 0 then error()<br>
  else rais(n-1)<br>
  end<br>
end<br>
ravi.compile(rais)<br>
<br>
function caller(n)<br>
  pcall(rais,n)<br>
end<br>
ravi.compile(caller)<br>
<br>
caller(1)<br>
<br>
Here the call to error() triggers a longjmp. The pcall() calls setjmp.<br>
The error only occurs on Windows as reported earlier.<br></blockquote><div><br></div><div>This isn't enough info to solve the problem. Pasting the LLVM IR or C code that calls setjmp and a stack trace of the crash might help figure it out, though.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I ran valgrind on Ubuntu to see if I could detect any memory issues.<br>
Valgrind reports 6 errors of following type - not sure if this is an<br>
issue or not.<br></blockquote><div><br></div><div>These memory leaks look unrelated. </div></div></div></div>