RFR (S) 8024635: Caching MethodType's descriptor string improves lambda linkage performance

Mandy Chung mandy.chung at oracle.com
Thu Oct 31 20:05:17 UTC 2013


On 10/30/2013 1:33 PM, John Rose wrote:
> 8024635: Caching MethodType's descriptor string improves lambda linkage performance
> Summary: Better interpreted and compiled performance of operations in MethodType important to LambdaMetafactory.
> Reviewed-by: jrose, twisti, ?
> Contributed-by: skuksenko
>
> http://cr.openjdk.java.net/~jrose/8024635/webrev.00/
> https://bugs.openjdk.java.net/browse/JDK-8024635

This looks fine to me.

Nit: maybe better to merge two constructors to explicitly specify if it 
wants to skip the parameter validations (not sure if there is any reason 
for the rtype and ptypes parameter order is different in the two ctors)

  107     private MethodType(Class<?> rtype, Class<?>[] ptypes, boolean trusted) {
  118     private MethodType(Class<?>[] ptypes, Class<?> rtype) {

Mandy

> Change details:
> - Add another one-element cache to MethodType.
> - Refactor and simplify the intern table query.
> - Refactor slot count logic to remove dead code execution (in interpreter).
>
> Previous Emails:
>    http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-September/021370.html
>
> There are enough reviewers for this, but additional review is welcome.
>
> Thanks,
> — John




More information about the core-libs-dev mailing list