On Tue, 27 Aug 2024 05:08:53 GMT, Shaojin Wen <s...@openjdk.org> wrote:
> A small optimization, when CompactStrings is turned off, the coder method is > not generated, which improves the startup performance The `JLA.stringInitCoder() != 0` check should probably be the first thing in this method, so that **C2** can reliably turn it into a `nop` when compact strings are off: src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 1204: > 1202: * Returns null if no such parameter exists or CompactStrings > is off. > 1203: */ > 1204: private static MethodTypeDesc coderArgsIfMaybeUTF16(MethodType > concatArgs) { Suggestion: private static MethodTypeDesc coderArgsIfMaybeUTF16(MethodType concatArgs) { if (JLA.stringInitCoder() != 0) { return null; } src/java.base/share/classes/java/lang/invoke/StringConcatFactory.java line 1214: > 1212: } > 1213: > 1214: if (maybeUTF16Count == 0 || JLA.stringInitCoder() != 0) { Suggestion: if (maybeUTF16Count == 0) { ------------- PR Review: https://git.openjdk.org/jdk/pull/20722#pullrequestreview-2262445378 PR Review Comment: https://git.openjdk.org/jdk/pull/20722#discussion_r1732390180 PR Review Comment: https://git.openjdk.org/jdk/pull/20722#discussion_r1732390401