1 6655638: dynamic languages need method handles
2 Summary: MethodHandle and related types, precursor to invokedynamic
4 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6655638
7 - JVM support for method handles
8 - enabled via -XX:+MethodHandleSupport
9 - method handle types implemented:
10 - * direct method handles (all cases of invoke{static,special,virtual,interface})
11 - * bound method handles for any argument (any position, of type ref/int/long)
12 - * non-blocking argument conversion adapters: null retype, checkcast, prim-to-prim, ref-to-prim
13 - * argument motion adapters: duplicate, delete, swap, rotate argument(s)
14 - * non-blocking unbox and varargs adapters: unbox from wrapper, spread from reference array
15 - method handle types not implemented (must be created via Java code):
16 - * prim-to-prim when float and non-float types are mixed (matrix is incomplete)
17 - * blocking adapters: prim-to-ref argument (boxing), varargs collection
18 - * flyby, ricochet (complex blocking combinators, require arglist abstraction)
19 - JIT support: NYI (uses compiled-to-interpreted calling sequences currently)
26 - unit tests in hotspot/src/share/projects/meth/test
29 This does not require a full JDK build.
31 $ cp -pr hotspot/src/share/projects/meth /tmp/meth
32 $ cp -pr hotspot/src/share/projects/anonk /tmp/anonk
37 $ cat README.txt | sed '/--------/q'