On Jul 11, 2012, at 5:53 PM, John Rose wrote:

> As some of you have noticed, Chris Thalinger, Michael Haupt, and I have been 
> working on the mlvm patches [1] for JEP-160 [2] for several months.  These 
> changes make method handles more optimizable.  They refactor lots of "magic" 
> out of the JVM and into more manageable Java code.
> …
> An associated webrev for hotspot-comp/jdk/ will be posted soon; it is already 
> present on mlvm-dev for the curious to examine.  (This change set also 
> deletes a lot of old code.)

Here is that webrev:
  http://cr.openjdk.java.net/~jrose/7023639/webrev.jdk.00/

These are the changes to JDK code that accompany the JVM changes already under 
review.

There are 2900 LOC deleted, and 7000 LOC added.  Key changes:
 - method handle behavior is fully represented by LambdaForm objects
 - chained method handles (including "adapter method handles") are gone
 - an ASM-based bytecode spinner compiles LambdaForms when they warm up
 - bound method handles are compactly represented without boxing
 - the private symbol-resolution interface to the JVM (MemberName) is improved
 - unit tests have more systematic coverage
 - a number of minor bugs are fixed

This is implementation work.  No public Java APIs are changed, although the 
javadoc is slightly edited for clarity.

Please have a look.

— John
_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to