The following closed test failed in the JDK17 CI:
vmTestbase/vm/compiler/regression/b6227033/b6227033.java
Here's a snippet from the log file:
3935--> 15952 ConI === 0 [[]] #int:2533609
3936--> 15953 ConI === 0 [[]] #int:2535562
3937--> 15954 ConI === 0 [[]] #int:2537514
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/phaseX.cpp:1139
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S154437/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/e88f95ae-b55a-4767-8e2d-197ee2db8388/runs/88aef479-33de-49f4-a317-c0875746a3c0/workspace/open/src/hotspot/share/opto/phaseX.cpp:1139), pid=9554, tid=9569
# assert(false) failed: infinite loop in PhaseIterGVN::optimize
#
# JRE version: Java(TM) SE Runtime Environment (17.0+8) (fastdebug build 17-ea+8-LTS-486)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 17-ea+8-LTS-486, compiled mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x15c3bcd] PhaseIterGVN::transform_old(Node*)+0x24d
#
# Core dump will be written. Default location: Core dumps may be processed with "/opt/core.sh %p" (or dumping to /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S77131/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/cbff2a0e-253e-443e-8e02-61958f9ec560/runs/1c32a898-ca4a-4374-b7d0-c4f35fd65278/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_vmTestbase_vm_compiler_regression/scratch/1/core.9554)
#
# An error report file with more information is saved as:
# /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S77131/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/cbff2a0e-253e-443e-8e02-61958f9ec560/runs/1c32a898-ca4a-4374-b7d0-c4f35fd65278/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_vmTestbase_vm_compiler_regression/scratch/1/hs_err_pid9554.log
#
# Compiler replay data is saved as:
# /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S77131/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/cbff2a0e-253e-443e-8e02-61958f9ec560/runs/1c32a898-ca4a-4374-b7d0-c4f35fd65278/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_vmTestbase_vm_compiler_regression/scratch/1/replay_pid9554.log
#
# If you would like to submit a bug report, please visit:
# https://bugreport.java.com/bugreport/crash.jsp
#
----------System.err:(1/145)----------
Java HotSpot(TM) 64-Bit Server VM warning: outputStream::do_vsnprintf output truncated -- buffer length is 2000 bytes but 2054 bytes are needed.
----------rerun:(43/10163)*----------
Here's the crashing thread's stack:
--------------- T H R E A D ---------------
Current thread (0x00007f9dc4328f70): JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=9569, stack(0x00007f9db4255000,0x00007f9db4356000)]
Current CompileTask:
C2: 5936 1460 b vm.compiler.regression.b6227033.b6227033::stack_overflow (40865 bytes)
Stack: [0x00007f9db4255000,0x00007f9db4356000], sp=0x00007f9db43514d0, free space=1009k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x15c3bcd] PhaseIterGVN::transform_old(Node*)+0x24d
V [libjvm.so+0x15bbfbe] PhaseIterGVN::optimize()+0x7e
V [libjvm.so+0xa19146] Compile::Optimize()+0x216
V [libjvm.so+0xa1c170] Compile::Compile(ciEnv*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0x1840
V [libjvm.so+0x8483fc] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1dc
V [libjvm.so+0xa2c051] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xea1
V [libjvm.so+0xa2ccd8] CompileBroker::compiler_thread_loop()+0x5a8
V [libjvm.so+0x18508d6] JavaThread::thread_main_inner()+0x256
V [libjvm.so+0x1857240] Thread::call_run()+0x100
V [libjvm.so+0x1541e46] thread_native_entry(Thread*)+0x116
The test task's JVM args are:
-Xcomp -XX:+CreateCoredumpOnCrash -ea -esa -XX:CompileThreshold=100 -XX:+UnlockExperimentalVMOptions -server -XX:-TieredCompilation