At least couple of tests fail with
# Internal Error (/home/katya/work/JavaSE/Hotspot/ws/git/layden.premain/open/src/hotspot/share/opto/subtypenode.cpp:114), pid=31222, tid=31240
# assert(verify(phase)) failed: missing Value() optimization
#
# JRE version: Java(TM) SE Runtime Environment (24.0) (fastdebug build 24-internal-2024-09-25-1720587.katya...)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 24-internal-2024-09-25-1720587.katya..., compiled mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x181c956] SubTypeCheckNode::Ideal(PhaseGVN*, bool)+0x3f6
#
Stack: [0x00001519e6685000,0x00001519e6786000], sp=0x00001519e67822a0, free space=1012k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x181c956] SubTypeCheckNode::Ideal(PhaseGVN*, bool)+0x3f6 (subtypenode.cpp:114)
V [libjvm.so+0x161265b] PhaseGVN::transform(Node*)+0x6b (phaseX.cpp:668)
V [libjvm.so+0xe1e6c7] GraphKit::gen_subtype_check(Node*, Node*)+0xe7 (graphKit.cpp:2916)
V [libjvm.so+0xe1ebdb] GraphKit::subtype_check_receiver(Node*, ciKlass*, Node**)+0x5b (graphKit.cpp:2962)
V [libjvm.so+0x8a84e4] PredictedCallGenerator::generate(JVMState*)+0x364 (callGenerator.cpp:902)
V [libjvm.so+0xbfa422] Parse::do_call()+0x602 (doCall.cpp:677)
V [libjvm.so+0x15e7fb0] Parse::do_one_bytecode()+0x410 (parse2.cpp:2719)
V [libjvm.so+0x15d5fba] Parse::do_one_block()+0x20a (parse1.cpp:1596)
V [libjvm.so+0x15d7476] Parse::do_all_blocks()+0x136 (parse1.cpp:725)
V [libjvm.so+0x15dadc8] Parse::Parse(JVMState*, ciMethod*, float)+0xa98 (parse1.cpp:629)
V [libjvm.so+0x8a4a49] ParseGenerator::generate(JVMState*)+0x169 (callGenerator.cpp:99)
V [libjvm.so+0xa5efce] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x167e (compile.cpp:793)
V [libjvm.so+0x8a2631] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x261 (c2compiler.cpp:172)
V [libjvm.so+0xa6ccbf] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xaff (compileBroker.cpp:2610)
V [libjvm.so+0xa6ef98] CompileBroker::compiler_thread_loop()+0x6a8 (compileBroker.cpp:2256)
V [libjvm.so+0xf4992c] JavaThread::thread_main_inner()+0xcc (javaThread.cpp:761)
V [libjvm.so+0x18b4e36] Thread::call_run()+0xb6 (thread.cpp:236)
V [libjvm.so+0x158b7bf] thread_native_entry(Thread*)+0x24f (os_linux.cpp:858)
when running with AOT cache with AOT class linking enabled.
The list of failed tests:
compiler/arraycopy/TestCloneWithStressReflectiveCode.java
compiler/arguments/TestStressReflectiveCode.java
Steps to reproduce> TESTED_JAVA/bin/java -XX:AOTMode=create -XX:AOTConfiguration=TESTED_JAVA/lib/classlist -XX:+AOTClassLinking -XX:AOTCache=app.aot
> bash jib.sh make -- run-test TEST=open/test/hotspot/jtreg/compiler/arraycopy/TestCloneWithStressReflectiveCode.java TEST_VM_OPTS="-XX:AOTCache=app.aot"
# Internal Error (/home/katya/work/JavaSE/Hotspot/ws/git/layden.premain/open/src/hotspot/share/opto/subtypenode.cpp:114), pid=31222, tid=31240
# assert(verify(phase)) failed: missing Value() optimization
#
# JRE version: Java(TM) SE Runtime Environment (24.0) (fastdebug build 24-internal-2024-09-25-1720587.katya...)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 24-internal-2024-09-25-1720587.katya..., compiled mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x181c956] SubTypeCheckNode::Ideal(PhaseGVN*, bool)+0x3f6
#
Stack: [0x00001519e6685000,0x00001519e6786000], sp=0x00001519e67822a0, free space=1012k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x181c956] SubTypeCheckNode::Ideal(PhaseGVN*, bool)+0x3f6 (subtypenode.cpp:114)
V [libjvm.so+0x161265b] PhaseGVN::transform(Node*)+0x6b (phaseX.cpp:668)
V [libjvm.so+0xe1e6c7] GraphKit::gen_subtype_check(Node*, Node*)+0xe7 (graphKit.cpp:2916)
V [libjvm.so+0xe1ebdb] GraphKit::subtype_check_receiver(Node*, ciKlass*, Node**)+0x5b (graphKit.cpp:2962)
V [libjvm.so+0x8a84e4] PredictedCallGenerator::generate(JVMState*)+0x364 (callGenerator.cpp:902)
V [libjvm.so+0xbfa422] Parse::do_call()+0x602 (doCall.cpp:677)
V [libjvm.so+0x15e7fb0] Parse::do_one_bytecode()+0x410 (parse2.cpp:2719)
V [libjvm.so+0x15d5fba] Parse::do_one_block()+0x20a (parse1.cpp:1596)
V [libjvm.so+0x15d7476] Parse::do_all_blocks()+0x136 (parse1.cpp:725)
V [libjvm.so+0x15dadc8] Parse::Parse(JVMState*, ciMethod*, float)+0xa98 (parse1.cpp:629)
V [libjvm.so+0x8a4a49] ParseGenerator::generate(JVMState*)+0x169 (callGenerator.cpp:99)
V [libjvm.so+0xa5efce] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x167e (compile.cpp:793)
V [libjvm.so+0x8a2631] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x261 (c2compiler.cpp:172)
V [libjvm.so+0xa6ccbf] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xaff (compileBroker.cpp:2610)
V [libjvm.so+0xa6ef98] CompileBroker::compiler_thread_loop()+0x6a8 (compileBroker.cpp:2256)
V [libjvm.so+0xf4992c] JavaThread::thread_main_inner()+0xcc (javaThread.cpp:761)
V [libjvm.so+0x18b4e36] Thread::call_run()+0xb6 (thread.cpp:236)
V [libjvm.so+0x158b7bf] thread_native_entry(Thread*)+0x24f (os_linux.cpp:858)
when running with AOT cache with AOT class linking enabled.
The list of failed tests:
compiler/arraycopy/TestCloneWithStressReflectiveCode.java
compiler/arguments/TestStressReflectiveCode.java
Steps to reproduce> TESTED_JAVA/bin/java -XX:AOTMode=create -XX:AOTConfiguration=TESTED_JAVA/lib/classlist -XX:+AOTClassLinking -XX:AOTCache=app.aot
> bash jib.sh make -- run-test TEST=open/test/hotspot/jtreg/compiler/arraycopy/TestCloneWithStressReflectiveCode.java TEST_VM_OPTS="-XX:AOTCache=app.aot"