RFR: 8360557: CTW: Inline cold methods to reach more code

Tobias Hartmann thartmann at openjdk.org
Thu Jul 3 07:22:39 UTC 2025


On Wed, 2 Jul 2025 07:16:44 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

> I submitted some testing to make sure that CTW is clean in our CI.

I see the following crashes that would need to be fixed before this is integrated:


# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/workspace/open/src/hotspot/share/opto/phaseX.cpp:2790), pid=3196445, tid=3196462
#  assert(!failure) failed: PhaseCCP not at fixpoint: analysis result may be unsound.
#
# JRE version: Java(TM) SE Runtime Environment (26.0) (fastdebug build 26-internal-2025-07-02-0711056.tobias.hartmann.jdk4)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-internal-2025-07-02-0711056.tobias.hartmann.jdk4, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x180cff8]  PhaseCCP::verify_analyze(Unique_Node_List&) [clone .part.0]+0x28

Current CompileTask:
C2:13166 2238    b        com.ibm.icu.impl.LocaleUtility::fallback (78 bytes)

Stack: [0x00007f20eca0c000,0x00007f20ecb0c000],  sp=0x00007f20ecb07050,  free space=1004k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x180cff8]  PhaseCCP::verify_analyze(Unique_Node_List&) [clone .part.0]+0x28  (phaseX.cpp:2790)
V  [libjvm.so+0x181e8aa]  PhaseCCP::analyze()+0x7ca  (phaseX.cpp:2790)
V  [libjvm.so+0xb44c94]  Compile::Optimize()+0x964  (compile.cpp:2479)
V  [libjvm.so+0xb480d3]  Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x1ec3  (compile.cpp:858)
V  [libjvm.so+0x96d157]  C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x467  (c2compiler.cpp:141)
V  [libjvm.so+0xb574f8]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xb58  (compileBroker.cpp:2323)
V  [libjvm.so+0xb586c8]  CompileBroker::compiler_thread_loop()+0x578  (compileBroker.cpp:1967)
V  [libjvm.so+0x10abd0b]  JavaThread::thread_main_inner()+0x13b  (javaThread.cpp:773)
V  [libjvm.so+0x1b11f26]  Thread::call_run()+0xb6  (thread.cpp:243)
V  [libjvm.so+0x178c718]  thread_native_entry(Thread*)+0x128  (os_linux.cpp:868)



# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/workspace/open/src/hotspot/share/opto/phaseX.cpp:784), pid=2175071, tid=2175089
#  assert(no_dead_loop) failed: dead loop detected
#
# JRE version: Java(TM) SE Runtime Environment (26.0) (fastdebug build 26-internal-2025-07-02-0711056.tobias.hartmann.jdk4)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-internal-2025-07-02-0711056.tobias.hartmann.jdk4, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x180d285]  PhaseGVN::dead_loop_check(Node*) [clone .part.0]+0x1d5

Current CompileTask:
C2:4914 2051   !b  4       com.sun.beans.introspect.MethodInfo::get (273 bytes)

Stack: [0x00007fe603f00000,0x00007fe604000000],  sp=0x00007fe603ffaef0,  free space=1003k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x180d285]  PhaseGVN::dead_loop_check(Node*) [clone .part.0]+0x1d5  (phaseX.cpp:784)
V  [libjvm.so+0x181c309]  PhaseIterGVN::transform_old(Node*)+0x529  (phaseX.cpp:767)
V  [libjvm.so+0x1820505]  PhaseIterGVN::optimize()+0xc5  (phaseX.cpp:1054)
V  [libjvm.so+0xb414ba]  Compile::inline_incrementally_cleanup(PhaseIterGVN&)+0x2ca  (compile.cpp:2151)
V  [libjvm.so+0xb41ed6]  Compile::inline_incrementally(PhaseIterGVN&)+0x416  (compile.cpp:2201)
V  [libjvm.so+0xb447ae]  Compile::Optimize()+0x47e  (compile.cpp:2329)
V  [libjvm.so+0xb480d3]  Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x1ec3  (compile.cpp:858)
V  [libjvm.so+0x96d157]  C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x467  (c2compiler.cpp:141)
V  [libjvm.so+0xb574f8]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xb58  (compileBroker.cpp:2323)
V  [libjvm.so+0xb586c8]  CompileBroker::compiler_thread_loop()+0x578  (compileBroker.cpp:1967)
V  [libjvm.so+0x10abd0b]  JavaThread::thread_main_inner()+0x13b  (javaThread.cpp:773)
V  [libjvm.so+0x1b11f26]  Thread::call_run()+0xb6  (thread.cpp:243)
V  [libjvm.so+0x178c718]  thread_native_entry(Thread*)+0x128  (os_linux.cpp:868)

-------------

PR Comment: https://git.openjdk.org/jdk/pull/26068#issuecomment-3031160931


More information about the hotspot-compiler-dev mailing list