On Mon, 2009-06-29 at 19:40 +0200, Vegard Nossum wrote:
> In accordance with the JVM specification, we should only initialize
> classes when the putstatic/getstatic/invokestatic instructions are
> _executed_ (there are a few other cases too, but the main point is
> that we cannot do this at method compilation time).
> 
> In order to maintain execution speed, we use only a single instruction
> for getstatic/putstatic. Initially, this instruction will access a
> special "guard" page which is not mapped -- and therefore it will
> trigger a segmentation fault. In the signal handler, we initialize the
> class and go through the "fixup list", a list of references to all the
> static fields for the class, and patch all the instructions so that
> they point to the right address for that field's value. When the
> signal handler returns, the instruction is restarted and this time
> succeeds.
> 
> Signed-off-by: Vegard Nossum <vegard.nos...@gmail.com>

This patch doesn't apply cleanly to master so I'm skipping the series.
Please resend.


------------------------------------------------------------------------------
_______________________________________________
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel

Reply via email to