Friday Jan 22, 2010

About two weeks ago I pushed the remaining changes (6894206, 6893081, 6829187, 6893268) for C2 invokedynamic support on x86 which were integrated into HotSpot 17 b07. Meanwhile HS17b07 has been integrated into JDK 7 b80 and the latter has been released.

With two changesets John Rose pushed lately (6891770, 6914665), which have been integrated into JDK 7 b79, you can run now invokedynamic enabled programs with decent performance. Additionally we tuned inlining heuristics a little (6912063) to be able to use inline-related switches in a product VM and to not count generated MethodHandle adapters.

And here is how it works (gwt is a simple testcase for guardWithTest):

Tuesday Jan 12, 2010

It's exactly one year ago that I started to work for Sun. Nice! I wasn't sure that I will make the anniversary facing the merger with Oracle. Anyway, I learned a lot in this first year and I'm really looking forward to the next years at Sun (or whatever the company will be called then).

Wednesday Sep 09, 2009

I'm still working on HotSpot compiler support for JSR 292. The progress is actually very good and inlining is already working in C2. Although there are still some problems with scavenging oops in nmethods and you have to stick to UseSerialGC if you want to give it a try. But John Rose is working on a fix for that.

While not working on inlining I started porting JSR 292 support to x86_64. I've already commited the interpreter support and compiler support is in the works and almost finished.

In the meantime Charles Nutter introduced another dynamic language, called Surinx, which uses invokedynamic and "the solid performance of Surinx bodes very well for JRuby's future." That sounds good.