Re: [9] RFR (M): 8049555: Move varargsArray from sun.invoke.util package to java.lang.invoke

2014-07-14 Thread Vladimir Ivanov
Paul, Igor, thanks for review. Best regards, Vladimir Ivanov On 7/11/14 4:24 PM, Paul Sandoz wrote: On Jul 11, 2014, at 2:21 PM, Vladimir Ivanov wrote: Igor, thanks for the hint! Yes, much better. Updated version: http://cr.openjdk.java.net/~vlivanov/8049555/webrev.01/ +1 Paul. ___

Re: [9] RFR (M): 8050052: Small cleanups in java.lang.invoke code

2014-07-14 Thread Paul Sandoz
On Jul 11, 2014, at 6:18 PM, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/8050052/webrev.00 > https://bugs.openjdk.java.net/browse/JDK-8050052 > > Numerous small code cleanups in java.lang.invoke package. > > Testing: jtreg, nashorn, octane w/ "-ea -esa" and COMPILE_THRESHOLD

Re: [9] RFR (M): 8050053: Improve caching of different invokers

2014-07-14 Thread Paul Sandoz
On Jul 11, 2014, at 6:35 PM, Vladimir Ivanov wrote: > http://cr.openjdk.java.net/~vlivanov/8050053/webrev.00 > https://bugs.openjdk.java.net/browse/JDK-8050053 > > Improve sharing of different invokers: basic, generic & exact invokers, > uninitialized call site invoker and NamedFunction invoker

Re: [9] RFR (M): 8050052: Small cleanups in java.lang.invoke code

2014-07-14 Thread Vladimir Ivanov
Paul, thanks! Small update: http://cr.openjdk.java.net/~vlivanov/8050052/prepared_forms/ Updated version: http://cr.openjdk.java.net/~vlivanov/8050052//webrev.01/ Best regards, Vladimir Ivanov On 7/14/14 4:57 PM, Paul Sandoz wrote: On Jul 11, 2014, at 6:18 PM, Vladimir Ivanov wrote: http

Re: [9] RFR (M): 8050053: Improve caching of different invokers

2014-07-14 Thread Vladimir Ivanov
Thank you, Paul. Best regards, Vladimir Ivanov On 7/14/14 5:34 PM, Paul Sandoz wrote: On Jul 11, 2014, at 6:35 PM, Vladimir Ivanov wrote: http://cr.openjdk.java.net/~vlivanov/8050053/webrev.00 https://bugs.openjdk.java.net/browse/JDK-8050053 Improve sharing of different invokers: basic, gen

[9] RFR (M): 8050166: Get rid of some package-private methods on arguments in j.l.i.MethodHandle

2014-07-14 Thread Vladimir Ivanov
http://cr.openjdk.java.net/~vlivanov/8050166/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8050166 Get rid of the following methods in j.l.i.MethodHandle: * convertArguments(MethodType newType) * bindArgument(int pos, BasicType basicType, Object value) * bindReceiver(Object receiver)

[9] RFR (S) 8050173: Generalize BMH.copyWith API to all method handles

2014-07-14 Thread Vladimir Ivanov
http://cr.openjdk.java.net/~vlivanov/8050173/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8050173 Added j.l.i.MethodHandle.copyWith(MethodType, LambdaForm) and provided implementation for all subclasses. Also, some cleanups: * rewrote MH.viewAsType on top of MH.copyWith; * extended

[9] RFR (XS): 8050174: Support overriding of isInvokeSpecial flag in WrappedMember

2014-07-14 Thread Vladimir Ivanov
http://cr.openjdk.java.net/~vlivanov/8050174/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8050174 Support overriding of isInvokeSpecial flag in WrappedMember. Testing: jdk/java/lang/invoke, jdk/java/util/streams, nashorn, octane w/ "-ea -esa" and COMPILE_THRESHOLD={0,30}. Reviewed-by:

[9] RFR (M): 8050057: Improve caching of MethodHandle reinvokers

2014-07-14 Thread Vladimir Ivanov
http://cr.openjdk.java.net/~vlivanov/8050057/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8050057 Cache MethodHandle reinvokers per basic type. For BoundMethodHandles, rebinding is no-op unless underlying LF is too complex (see BMH::tooComplex() for details). Also, introduced Delegating

[9] RFR (M): 8050200: Make LambdaForm intrinsics detection more robust

2014-07-14 Thread Vladimir Ivanov
http://cr.openjdk.java.net/~vlivanov/8050200/webrev.00/ https://bugs.openjdk.java.net/browse/JDK-8050200 Replace pattern matching sequences of LambdaForm names during compilation with explicit marks on MethodHandles. Intrinsic ID is associated with a method handle using DelegatingMethodHandle.