RFR: 8336856: Efficient hidden class-based string concatenation strategy [v49]
Claes Redestad
redestad at openjdk.org
Tue Aug 13 08:50:18 UTC 2024
On Tue, 13 Aug 2024 08:36:18 GMT, Shaojin Wen <duke at openjdk.org> wrote:
>> This PR implements the same algorithm as the current generateMHInlineCopy based on bytecode to improve startup performance.
>
> Shaojin Wen has updated the pull request incrementally with four additional commits since the last revision:
>
> - Update src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java
>
> Co-authored-by: Claes Redestad <claes.redestad at oracle.com>
> - Update src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java
>
> Co-authored-by: Claes Redestad <claes.redestad at oracle.com>
> - Update test/jdk/java/lang/String/concat/HiddenClassUnloading.java
>
> Co-authored-by: Claes Redestad <claes.redestad at oracle.com>
> - Update src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java
>
> Co-authored-by: Claes Redestad <claes.redestad at oracle.com>
src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 1191:
> 1189: cl = String.class;
> 1190: }
> 1191: paramTypes[i + 4] = ConstantUtils.classDesc(cl);
Suggestion:
paramTypes[i + 4] = needStringOf(cl) ? CD_String : ConstantUtils.classDesc(cl);
src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 1223:
> 1221: for (int i = 0; i < parameterCount; i++) {
> 1222: var cl = concatArgs.parameterType(i);
> 1223: paramTypes[i + 1] = needString(cl) ? CD_String : ConstantUtils.classDesc(cl);
Suggestion:
paramTypes[i + 1] = needStringOf(cl) ? CD_String : ConstantUtils.classDesc(cl);
Typo in my previous suggestion
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20273#discussion_r1714913889
PR Review Comment: https://git.openjdk.org/jdk/pull/20273#discussion_r1714912293
More information about the core-libs-dev
mailing list