The loom repo has picked up an issue after sync'ing up with jdk-19+8.
A few tests are hitting an assert in ciTypeFlow::profiled_count when the test is run in a virtual thread. So far the failures are with
java/foreign/TestSegmentCopy.java
java/text/Format/DateFormat/SimpleDateFormatPatternTest.java
In both cases the compile task is org.testng.internal.Invoker::invokeTestMethods, don't know if this coincidence but maybe it will help. jtreg uses TestNG 6.9.5 at this time.
The error log in all cases looks like:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/ws/loom/open/src/hotspot/share/utilities/growableArray.hpp:145), pid=6561, tid=34311
# assert(0 <= i && i < _len) failed: illegal index
#
# JRE version: Java(TM) SE Runtime Environment (19.0) (fastdebug build 19-internal+0-2022-02-03-1408050.USER...)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 19-internal+0-2022-02-03-1408050. USER..., mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, bsd-amd64)
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
# https://bugreport.java.com/bugreport/crash.jsp
#
Current CompileTask:
C2: 4271 1957 % ! 4 org.testng.internal.Invoker::invokeTestMethods @ 612 (1101 bytes)
Stack: [0x000070000db36000,0x000070000dc36000], sp=0x000070000dc335c0, free space=1013k
Thread 0x00007facee03cc10 [34311]
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.dylib+0x12feac9] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x6e9
V [libjvm.dylib+0x12ff14b] VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x3b
V [libjvm.dylib+0x70428d] report_vm_error(char const*, int, char const*, char const*, ...)+0xdd
V [libjvm.dylib+0x594afe] ciTypeFlow::profiled_count(ciTypeFlow::Loop*)+0x51e
V [libjvm.dylib+0x594d63] ciTypeFlow::Loop::at_insertion_point(ciTypeFlow::Loop*, ciTypeFlow::Loop*)+0x133
V [libjvm.dylib+0x595227] ciTypeFlow::build_loop_tree(ciTypeFlow::Block*)+0x307
V [libjvm.dylib+0x595c3e] ciTypeFlow::df_flow_types(ciTypeFlow::Block*, bool, ciTypeFlow::StateVector*, ciTypeFlow::JsrSet*)+0x4de
V [libjvm.dylib+0x595f60] ciTypeFlow::flow_types()+0x1b0
V [libjvm.dylib+0x596905] ciTypeFlow::do_flow()+0x95
V [libjvm.dylib+0x55b6fb] ciMethod::get_osr_flow_analysis(int)+0x7b
V [libjvm.dylib+0x1027980] Parse::Parse(JVMState*, ciMethod*, float)+0x660
V [libjvm.dylib+0x4efc7a] ParseGenerator::generate(JVMState*)+0xaa
V [libjvm.dylib+0x604e12] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x1352
V [libjvm.dylib+0x4edda7] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x167
V [libjvm.dylib+0x622d19] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x779
V [libjvm.dylib+0x622388] CompileBroker::compiler_thread_loop()+0x298
V [libjvm.dylib+0x12498b4] JavaThread::thread_main_inner()+0x254
V [libjvm.dylib+0x1246287] Thread::call_run()+0x177
V [libjvm.dylib+0xff4cc0] thread_native_entry(Thread*)+0x150
C [libsystem_pthread.dylib+0x6109] _pthread_start+0x94