Currently, the java.util.Formatter$Conversion::isValid method is implemented based on switch, which cannot be inlined because codeSize > 325. This problem can be avoided by implementing it with ImmutableBitSetPredicate.
use `-XX:+UnlockDiagnosticVMOptions -XX:+PrintInlining` to see the master branch: @ 109 java.util.Formatter$Conversion::isValid (358 bytes) failed to inline: hot method too big current version @ 109 java.util.Formatter$Conversion::isValid (10 bytes) inline (hot) @ 4 jdk.internal.util.ImmutableBitSetPredicate$SmallImmutableBitSetPredicate::test (50 bytes) inline (hot) ------------- Commit messages: - use ImmutableBitSetPredicate optimize Formatter.Conversion#isValid Changes: https://git.openjdk.org/jdk/pull/19926/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19926&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8335252 Stats: 36 lines in 1 file changed: 12 ins; 0 del; 24 mod Patch: https://git.openjdk.org/jdk/pull/19926.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19926/head:pull/19926 PR: https://git.openjdk.org/jdk/pull/19926