[kaffe] MIPS JIT3 and null pointers.

Casey Marshall rsdio at metastatic.org
Wed Mar 17 14:27:02 PST 2004


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

>>>>> "Casey" == Casey Marshall <rsdio at metastatic.org> writes:

Casey> Hi, I've determined why an invokeinterface on a null object
Casey> will abort rather than throw a NullPointerException: in
Casey> dispatchException (kaffe/kaffevm/exception.c:303) the full
Casey> stack trace cannot be built, for some reason, so the exception
Casey> handler won't be found.

Casey> The SIGSEGV occurs in soft_lookupinterfacemethod, which is
Casey> called with a NULL obj parameter, which in turn is called from
Casey> jitted code. So my guess is that somehow the MIPS backend can't
Casey> trace back across this barrier.

Casey> I'm assuming that __mipsGetNextFrame is broken, but would
Casey> entertain other ideas. Has anyone dealt with something similar
Casey> to this on other architectures?

Or: is it even possible to build a stack frame from one of Kaffe's
internal C functions? buildStackFrame stops at
soft_lookupinterfacemethod because it is is not a part of the current
thread; i.e. jthread_on_current_stack returns false when an address in
soft_lookupinterfacemethod is called.

- -- 
Casey Marshall || rsdio at metastatic.org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.7 <http://mailcrypt.sourceforge.net/>

iD8DBQFAWNA6gAuWMgRGsWsRAvEnAJ4tmFawg+UgYdgszmF6lQCRudxkGQCeM5CR
9y/5XnNtNAmPv2O9KhAtuco=
=vdSU
-----END PGP SIGNATURE-----




More information about the kaffe mailing list