Re: review request (L): JDK changes for 7023639: JSR 292 method handle invocation needs a fast path for compiled code

2012-07-24 Thread Aleksey Shipilev
On 07/23/2012 10:31 PM, John Rose wrote: On Jul 23, 2012, at 2:27 AM, Aleksey Shipilev wrote: The code does not need to be scalable, because the number of entries in the cache is small (order of 10-100) and scales only with type schema complexity, not workload complexity. If I had a nickel...

MethodHandle.bindTo() only for reference types?

2012-07-24 Thread Aleksey Shipilev
Hi, I wonder if anyone could point to the explanation why MH.bindTo() is accepting only reference types? This behavior seems surprising for newcomers like me, mostly because similar API accepts primitive types. For one, given: public static void foo(int i); ...and the MethodHandle mh referring

Re: review request (L): JDK changes for 7023639: JSR 292 method handle invocation needs a fast path for compiled code

2012-07-24 Thread Christian Thalinger
On Jul 24, 2012, at 2:55 AM, Aleksey Shipilev aleksey.shipi...@oracle.com wrote: On 07/23/2012 10:31 PM, John Rose wrote: On Jul 23, 2012, at 2:27 AM, Aleksey Shipilev wrote: The code does not need to be scalable, because the number of entries in the cache is small (order of 10-100) and

Re: review request (L): JDK changes for 7023639: JSR 292 method handle invocation needs a fast path for compiled code

2012-07-24 Thread Aleksey Shipilev
On 07/24/2012 07:15 PM, Christian Thalinger wrote: Not sure if this logic is applicable in this particular case. This is the potential performance cliff you are eager to get rid of with new implementation. No it's not. We know exactly what causes the performance cliff. It's a completely

Re: MethodHandle.bindTo() only for reference types?

2012-07-24 Thread Attila Szegedi
The bind operation is traditionally used for taking an instance method (that takes an object instance as its 0th argument), and binding it to a specific instance. It's an admittedly minor semantic point. I don't think technically there'd be a difficulty in having it work on primitives, it's just

Re: MethodHandle.bindTo() only for reference types?

2012-07-24 Thread John Rose
On Jul 24, 2012, at 11:09 AM, Attila Szegedi wrote: I don't think technically there'd be a difficulty in having it work on primitives, it's just that it ain't the intent; you still use insertArguments() for uses that are not semantically binds. MethodHandle.bind is a less-general primitive.

Re: MethodHandle.bindTo() only for reference types?

2012-07-24 Thread RĂ©mi Forax
On 07/24/2012 09:02 PM, John Rose wrote: On Jul 24, 2012, at 11:09 AM, Attila Szegedi wrote: I don't think technically there'd be a difficulty in having it work on primitives, it's just that it ain't the intent; you still use insertArguments() for uses that are not semantically binds.

RE Lambda Forms the Sequel

2012-07-24 Thread Mark Roos
From John on the HotSpot list The new Lambda Form framework is about to be integrated. This a key foundation stone for optimizing dynamic languages. On this foundation, we want to build a robustly performant and portable implementation of JSR 292, to support our current and future set of