On Sun, 29 Jun 2025 15:26:14 GMT, Richard Reingruber <rr...@openjdk.org> wrote:
> This PR adds CompileCommands to the test DumpThreadsWithEliminatedLock.java > to force inlining of java/lang/String*.* methods. This will make inlining > more stable to allow for the expected lock elimination based on c2 escape > analysis. > > Forcing inlining of java/lang/StringBuffer.* wasn't sufficient on x86_64. > With that the test still failed with TieredCompilation disabled. > > Testing: x86_64, ppc64 manually. Other major platforms as part of our CI > testing. > > Failed inlining on x86_64 with TieredCompilation disabled: > > > make test > TEST=com/sun/management/HotSpotDiagnosticMXBean/DumpThreadsWithEliminatedLock.java > TEST_VM_OPTS="-XX:-TieredCompilation -XX:+UnlockDiagnosticVMOptions > -XX:CompileCommand=PrintInlining,DumpThreadsWithEliminatedLock.*" > JTREG=TIMEOUT_FACTOR=0.1 > > [...] > > STDOUT: > CompileCommand: PrintInlining DumpThreadsWithEliminatedLock.* bool > PrintInlining = true > @ 1 > java.util.concurrent.atomic.AtomicBoolean::get (13 bytes) inline (hot) > @ 11 java.lang.StringBuffer::<init> (7 bytes) > inline (hot) late inline succeeded (string method) > @ 3 java.lang.AbstractStringBuilder::<init> > (39 bytes) inline (hot) > @ 1 java.lang.Object::<init> (1 bytes) > inline (hot) > @ 16 java.lang.System::currentTimeMillis (0 > bytes) (intrinsic) > s @ 19 java.lang.StringBuffer::append (13 bytes) > failed to inline: already compiled into a big method > s @ 24 java.lang.StringBuffer::toString (44 > bytes) inline (hot) late inline succeeded (string method) > s @ 1 java.lang.StringBuffer::length (5 bytes) > accessor > @ 24 java.lang.String::<init> (98 bytes) > failed to inline: already compiled into a big method > @ 30 > java.util.concurrent.atomic.AtomicReference::set (6 bytes) accessor > 2025-07-02T09:25:53.396634900Z Attempt 1, found: false > 2025-07-02T09:25:53.415673072Z Attempt 2, found: false > 2025-07-02T09:25:53.418876867Z Attempt 3, found: false > > [...] This pull request has now been integrated. Changeset: fea73c1d Author: Richard Reingruber <rr...@openjdk.org> URL: https://git.openjdk.org/jdk/commit/fea73c1d40441561a246f2a09a739367cfc197ea Stats: 5 lines in 1 file changed: 0 ins; 0 del; 5 mod 8360599: [TESTBUG] DumpThreadsWithEliminatedLock.java fails because of unstable inlining Reviewed-by: alanb, mdoerr, lmesnik ------------- PR: https://git.openjdk.org/jdk/pull/26033