A blog about programming topics, mostly JVM, Linux kernel, and x86 related things.

Thursday, April 23, 2009

Summer of Code 2009 is on!

The list of accepted projects for Jato was announced just last Monday but work on improving the JIT compiler is already in full swing!

The biggest functional feature so far comes from an innocent-looking commit 394c7ba that enables Jato to do loops! Yes, you read that right -- today is the first day Jato is able to generate correct code for for and while loops and execute them. And it's the coolest thing ever!

Other changes include fixes to the register allocator, i386 cross-compiling support on x86-64, and some initial patches for the x86-64 port. There was also some work done during the application period on 64-bit arithmetic which brings the bytecode coverage of the JVM instruction set on i386 up to 61%.

As always, feel free to drop by at #jato on irc.freenode.net if you're interested in helping out in development or testing. There's no shortage of interesting things to do!

Friday, April 10, 2009

Jato in Summer of Code 2009

Jato is participating in Google Summer of Code again this year. I was amazed by the quality of the proposals this year which is why I asked Google to increase the number of slots from last year.

The common theme for the summer is to get the first proper release out of the door. We have variety of proposals to ranging from making System.out.println() work (yes it is hard) to porting Jato to x86-64 and ARM. One particularly interesting proposal is to replace JamVM with cafebabe to make Jato a standalone VM. That's something I've been hoping to do for quite a while now because of the license incompatibility between Jato and JamVM.

There are also proposals to add support for exception handling, implement code generation for invokeinterface, and implement inline caching. So needless to say, I'm looking forward to working with my "students" on interesting topics this year!