RFR: 8339241: Optimize LambdaForm#basicType(Class) [v2]
Shaojin Wen
swen at openjdk.org
Fri Aug 30 01:17:37 UTC 2024
> 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 (87 bytes) failed to inline: callee is too large
Shaojin Wen has updated the pull request incrementally with one additional commit since the last revision:
Suggestions from @cl4es
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/20759/files
- new: https://git.openjdk.org/jdk/pull/20759/files/5ac70bda..bd109c3f
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=20759&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=20759&range=00-01
Stats: 10 lines in 1 file changed: 4 ins; 0 del; 6 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
More information about the core-libs-dev
mailing list