Happy International Invokedynamic Day!

I have been working furiously this summer, patching the OpenJDK HotSpot JVM for the JSR 292 implementation of dynamic invocation.

In the wee hours of this morning, the JVM has for the first time processed a full bootstrap cycle for invokedynamic instructions, linking the constant pool entries, creating the reified call site object, finding and calling the per-class bootstrap method, linking the reified call site to a method handle, and then calling the linked call site 999 more times through the method handle, at full speed. The method names mentioned by the caller and the callee were different, though the signatures were the same. The linkage was done by random, hand-written Java code inside the bootstrap methdod.

The Email thread of the announcement is truly international, since Guillaume Laforge celebrated by sending virtual champagne.

The example code is included in the Email, and also posted (as a truly rebarbative test in a NetBeans project) with the patches. As for the JVM code, it only works on x86/32; the next step is to move the assembler code into the right files, and finish the support for x86/64 and SPARC.

Happy International Invokedynamic Day!

(And by a curious anagrammatic permutation of letters, it could also be International Davinci-Monkey Day. My co-workers, who watched me pounding on my keyboard all summer, claim to see some significance in this.)

Comments:

Truly epic!... benchmarks or it didn't happen :)

Sam

Posted by Sam Pullara on August 26, 2008 at 03:37 PM PDT #

No benchmarks yet, and no performance. This milestone, significant as it is, is only step 3 in the list detailed in my MLVM-DEV message of August 4. Ref: http://mail.openjdk.java.net/pipermail/mlvm-dev/2008-August/000166.html

Posted by John Rose on August 26, 2008 at 04:12 PM PDT #

hi there,

congrats!! Can you update the post with some important notes from the email thread to make it easier for JVM dynamic language noobs to understand the significance of what you did ?

thank you,

BR,
~A

Posted by anjan bacchu on September 01, 2008 at 04:31 PM PDT #

[Trackback] I will be at JVM Language Summit as a speaker to talk about JSR 292 backport.

Posted by Rémi Forax's Blog on September 21, 2008 at 06:29 PM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

John R. Rose

Java maven, HotSpot developer, Mac user, Scheme refugee.

Once Sun and present Oracle engineer.

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today