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