Shark 0.03 released

I just updated icedtea6 hg with the latest Shark. The main reason for this release is that Andrew Haley pointed out that the marked-method stuff I was using to differentiate compiled methods and interpreted methods didn’t work on amd64, and while it was possible to make it work there I didn’t like the idea of having something that needs tweaking for each new platform you build on. Now interpreted methods have the same calling convention as compiled ones, which makes the need for differentiation obsolete.

Other new features in this release include support for long, float, and double values, and a massive pile of new bytecodes. Check out the coverage page now, it’s awesome!

3 thoughts on “Shark 0.03 released

  1. Gary, I’ve been subscribed to your blog for a while and -ashamingly enough- I still couldn’t tell in a sentence what shark actually is. An LLVM-backed JIT, replacing C{1,2}? I notice gbenson.net is also missing the elevator pitch…

  2. Shark is an LLVM-based JIT for the zero-assembler port of HotSpot. It’s not so much to replace C1 and C2 — there is no C1 or C2 for zero — but it does slot into HotSpot using the same interface.

    What’s an elevator pitch?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.