On Tue, 13 Apr 2021 18:11:37 GMT, Claes Redestad <[email protected]> wrote:
> This patch reduces work done initializing VarForms - mostly observed when
> loading each VarHandle implementation class.
>
> - Lazily resolve MemberNames.
> - Streamline MethodType creation. This reduces the number of MethodTypes
> created.
>
> Net effect is a reduction in bytecode executed per VH class by 50-60%.
Very nice.
src/java.base/share/classes/java/lang/invoke/VarForm.java line 130:
> 128: } catch (NoSuchMethodException | IllegalAccessException e) {
> 129: throw new UnsupportedOperationException();
> 130: }
Suggestion:
} catch (ReflectiveOperationException e) {
throw newInternalError("Failed resolving VarHandle member
name", ex);
}
-------------
Marked as reviewed by psandoz (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/3472