RFR (S): [MVT] Support lambda form customization in LambdaFormBuilder

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Wed Jul 19 18:05:13 UTC 2017


Is there any value in having the 'assert', given that the method 
'checkActualReceiver' always returns true? Taking thing further - do you 
need a method at all? Do you expect this to be used in other places?

Maurizio


On 19/07/17 18:40, Vladimir Ivanov wrote:
> http://cr.openjdk.java.net/~vlivanov/valhalla/8184938/webrev.00/
>
> Implement lambda form customization in LambdaFormBuilder. (Duplicated 
> logic from InvokerBytecodeGenerator.)
>
> LF customization is crucial for performant MH.invoke() and 
> MH.invokeExact() on non-constant method handles. It enables 
> JIT-compilers to generate a single nmethod for the whole method handle 
> chain.
>
> Otherwise, the method handle chain scatters into numerous nmethods 
> (one for each method handle) which severely affects performance 
> (especially for MVT where Q-typed lambda forms can't be compiled as a 
> root.)
>
> Testing: jdk/test/valhalla/mvt/
>
> Best regards,
> Vladimir Ivanov




More information about the valhalla-dev mailing list