Jason Gloudon wrote:
Yep, you are right - I did miss this point sometimes. We have to do a _save_registers before calling code, that might throw an exception.If the JIT allocates any parrot register contents to callee-save registers (which we use strictly as such), and calls an external function that raises an exception, you cannot restore the contents of those registers to Parrot registers after the external function raises an exception because you do not know where or how the compiler has saved the registers.
leo