Will,<div><br></div><div>I will be submitting the attached patch to VMKit soon. It's a rewrite of how we handle exceptions. Basically:</div><div><br></div><div>Before: use setjmp/longjmp for C++, do exception checks after each call in Java</div>
<div>After: use setjmp/longjmp for C++ and Java</div><div><br></div><div>My plan is to uniform both worlds when it comes to exceptions and eventually change some code in LLVM for maximizing performance.</div><div><br></div>
<div>At the code level, the only thing that you need to know (I think) is that you should not change the current's thread pending exception directly (in C++ code), but instead should call the throwException method.</div>
<div><br></div><div>This may break some of your code in OpenJDK, so let me know if you have questions. Otherwise, I'll submit the patch.</div><div><br></div><div>Cheers,</div><div>Nicolas</div>