A small optimization to simplify the implementation logic of LambdaForm$BasicType#basicType method can reduce the call stack and reduce the overall bytecode size.
Below is the compiler log * baseline @ 1 java.lang.invoke.LambdaForm$BasicType::basicType (8 bytes) inline @ 1 sun.invoke.util.Wrapper::basicTypeChar (18 bytes) inline @ 1 java.lang.Class::isPrimitive (0 bytes) intrinsic @ 11 sun.invoke.util.Wrapper::forPrimitiveType (122 bytes) failed to inline: callee is too large @ 14 sun.invoke.util.Wrapper::basicTypeChar (5 bytes) inline * current java.lang.invoke.LambdaForm$BasicType::basicType (59 bytes) failed to inline: callee is too large ------------- Commit messages: - from @liach's suggestion - optimize LambdaForm#basicType(Class) Changes: https://git.openjdk.org/jdk/pull/20759/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20759&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339241 Stats: 6 lines in 1 file changed: 5 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20759.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20759/head:pull/20759 PR: https://git.openjdk.org/jdk/pull/20759