-
Enhancement
-
Resolution: Fixed
-
P4
-
None
-
b27
jli.NamedFunction caches an invoker MethodHandle, but this is only created and used by the LF interpreter. Removing it might mean a slight degradation in LFI performance, since we'd possibly have to create the method type on each invocation.
By restructuring so that NamedFunction creates the invocation methodType on construction and drop the invoker cache we are more or less neutral for LFI performance, but see a small win in the default path for those NamedFunctions that operate on a MemberName and not a ResolvedHandle (including many primordial and intrinsic MHs).
By restructuring so that NamedFunction creates the invocation methodType on construction and drop the invoker cache we are more or less neutral for LFI performance, but see a small win in the default path for those NamedFunctions that operate on a MemberName and not a ResolvedHandle (including many primordial and intrinsic MHs).