[kaffe] Kaffe JIT on Alpha

Kapil Vaswani kapil at csa.iisc.ernet.in
Mon Apr 21 02:20:01 PDT 2003

Hi Kevin,

Please find my comments inline.

Kevin D. Kissell wrote

> Just to remind Kapil, the MIPS JIT, if built from 1.0.7 sources
> with a few patches I posted last year, will build, but fails 5 out
> of 116 regression tests.  I managed to figure out and fix one failure 
> - and yes, I know I owe the group the necessary patch.
Thanks for the info; I have taken a look at your patches.

> The remaining failures do look superficially like some of what
> you have described - null pointer exceptions where none should
> be possible.  I have generated JIT translation traces and used
> gdb to try to isolate them, and they seem to be due to null pointers
> in data structures that are otherwise OK, as if the JIT code was
> somehow fogetting to commit a non-zero result to memory in
> some unusual case(s).  It would not surprise me, given the similarity
> between the Alpha and MIPS architectures, if there was some
> common underlying problem, something that was assumed by
> these RISC ports that changed in the architecture-independent
> code somewhere allong the line in ways that don't hurt the x86
> port.  The coincidences continue in your report of problems
> with the CVS build.  Whereas, as I said, a patched 1.0.7 kaffe
> will generate an *almost* functional MIPS JIT, building from
> the CVS sources fails in trying to compile the @essential files
> under MIPS with JIT enabled.  The error isn't exactly the same,
> but it's striking.  Of course, it all could be a coincidence, but it
> wouldn't surprise me if there were at least one common underlying
> bug.
Quite possible. Exactly why it might be a good idea to keep posting 
problems/bugs/patches; might be of help to someone else!

I actually managed to proceed from my previous point of failure (error 
due to libio not found; the vm for some reason was looking for libio in 
clib/native), only to hit a failure later on during the building of 
javalib. Here it goes...

Assertion failed: fp != 0, file exception.h, line 150
./rebuildLib[47]: 15654 Resources lost(coredump)
make[1]: *** [lib/stamp] Error 134
make[1]: Leaving directory `/global/utemp/csakapil/kaffe/libraries/javalib'
make: *** [all-recursive] Error 1

And sounds like it might have something to do with the bugs you found an 
year ago.  While tracing backwards on this problem, I found this in the 
Changelog; wonder if its relevent.

1999-09-20  Edouard G. Parmelan  <Edouard.Parmelan at quadratec.fr>
       * config/alpha/jit-alpha.def config/alpha/jit.h
       config/alpha/trampolines.c config/alpha/osf/config.frag
       config/alpha/osf/jit-md.h config/alpha/osf/md.c: Follow ``Calling
       Standard for Alpha Systems'' and add exceptions handling for Dec 
       with libexc.
       @@@ Be careful, it's not yet working. @@@

2001-06-18  Edouard G. Parmelan  <egp at free.fr>
       * config/alpha/osf/config.frag, config/alpha/osf/jit-md.h,
       config/alpha/osf/md.c: Use new stack inspection function and get
       ride of libexc.

config.frag still seems to be using libexec; wonder whats the status on 

> I'm busy dealing with non-Java, non-kaffe stuff for the next several
> weeks, but I'll be watching this with some interest.
> Note that Dalibor has been able to get the MIPS JIT under IRIX
> from CVS sources past the @essential files build failure by using
> Jikes instead of kaffe to build the class libraries. 

Not sure if using Jikes is an option for me. Any recourse?? I would love 
to get the kaffe jit going one way or the other.

Thanks again!


More information about the kaffe mailing list