On Mar 14, 2014, at 1:19 PM, Vladimir Ivanov <vladimir.x.ivanov@oracle.com> wrote:
FYI, this change isn't limited to only bytecode assembly improvements, but also contains caching of lambda forms for setters/getter of typed arrays.
Do you mean for MethodHandles.arrayElementGetter/Setter? If so i don't see relevant changes in: http://cr.openjdk.java.net/~vlivanov/8037210/webrev.00/src/share/classes/jav... to say MethodHandleImpl.ArrayAccessor: static final class ArrayAccessor { /// Support for array element access static final HashMap<Class<?>, MethodHandle> GETTER_CACHE = new HashMap<>(); // TODO use it static final HashMap<Class<?>, MethodHandle> SETTER_CACHE = new HashMap<>(); // TODO use it Paul.
If there are any objections, I can back the caching logic out and include it into one of upcoming changes.
Best regards, Vladimir Ivanov
On 3/14/14 3:45 PM, Vladimir Ivanov wrote:
http://cr.openjdk.java.net/~vlivanov/8037209/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8037209 440 lines changed: 313 ins; 67 del; 60 mod
This is a cleanup of JSR292 code to improve bytecode assembly code for lambda forms.
Contributed-by: john.r.rose@oracle.com
Testing: jdk/java/{lang/invoke,util}, vm.mlvm.testlist, nashorn, jruby
Configs: -ea -esa -Xverify:all -D...COMPILE_THRESHOLD={0,30} -D...PROFILE_LEVEL={0,1}
Best regards, Vladimir Ivanov _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev