From: Godmar Back (gback@cs.utah.edu)
Date: Thu Dec 10 1998 - 17:48:49 EST
Well, I'm fixing the classloader problems people have been reporting
lately, and I got the interpreter done (along with a bunch of other
bug fixes; did you know, for instance, that Kaffe's interpreter didn't
even release a lock on a synchronized method when an exception was thrown).
While pondering the jitter, I've come to the conclusion that it is
impossible to not have verifyMethod reentrant, i.e., that it is necessary
to carry codeInfo along.
Consider a scenario where a method is verified, the jit lock is taken
and then getClass is invoked. GetClass, as it so happens, calls out
to loadClass. loadClass needs to jit compile something and can't, and
voila we have the infamous "reenter verifier violation"
So, I'm trying to make this work with the fewest changes possible.
In code-analyse.c, it's easy. It's harder in the jit/ subdirectory.
I think in order to keep the code changes small, I'll just use a
thread-local variable there.
Any comments?
- Godmar
This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 19:57:11 EDT