-
Bug
-
Resolution: Duplicate
-
P3
-
17, 21, 22, 23, 24
A mention in the PR would be appreciated, I spent quite some time extracting, reducing and cleaning up the JASM file.
It is hard to say what is wrong without further investigation.
Affected:
JDK23, 22, 21, 17.
JKD11 does not have the required flags -XX:RepeatCompilation=100 -XX:+StressIGVN, so I'm not sure if it is affected, and same for older JDK.
Product does not seem to fail, but not sure if it would just create wrong results.
Similar bugs:
https://bugs.openjdk.org/browse/JDK-8238384
https://bugs.openjdk.org/browse/JDK-8288570
java -jar ~/Documents/asmtools-7.0-build/release/lib/asmtools.jar jasm X.jasm
/oracle-work/jdk-fork2/build/linux-x64-debug/jdk/bin/java -XX:CompileCommand=printcompilation,X::* -XX:RepeatCompilation=100 -XX:+StressIGVN -XX:CompileCommand=compileonly,X::test -Xcomp -XX:-TieredCompilation X
CompileCommand: PrintCompilation X.* bool PrintCompilation = true
CompileCommand: compileonly X.test bool compileonly = true
469 26 b X::test (89 bytes)
753 27 % b X::test @ 43 (89 bytes)
1932 28 b X::test (89 bytes)
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/oracle-work/jdk-fork2/open/src/hotspot/share/opto/gcm.cpp:793), pid=3737797, tid=3737811
# assert(store != load->find_exact_control(load->in(0))) failed: dependence cycle found
#
# JRE version: Java(TM) SE Runtime Environment (24.0) (fastdebug build 24-internal-2024-06-13-1913126.emanuel...)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 24-internal-2024-06-13-1913126.emanuel..., compiled mode, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0xd500fe] PhaseCFG::insert_anti_dependences(Block*, Node*, bool)+0x1cbe
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /oracle-work/xyz/core.3737797)
#
# An error report file with more information is saved as:
# /oracle-work/xyz/hs_err_pid3737797.log
#
# Compiler replay data is saved as:
# /oracle-work/xyz/replay_pid3737797.log
#
# If you would like to submit a bug report, please visit:
# https://bugreport.java.com/bugreport/crash.jsp
#
Current CompileTask:
C2:1975 28 b X::test (89 bytes)
Stack: [0x00007f7ae81fa000,0x00007f7ae82fb000], sp=0x00007f7ae82f66c0, free space=1009k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0xd500fe] PhaseCFG::insert_anti_dependences(Block*, Node*, bool)+0x1cbe (gcm.cpp:793)
V [libjvm.so+0xd561ee] PhaseCFG::schedule_late(VectorSet&, Node_Stack&)+0xa2e (gcm.cpp:1410)
V [libjvm.so+0xd56b57] PhaseCFG::global_code_motion()+0x407 (gcm.cpp:1521)
V [libjvm.so+0xd598a1] PhaseCFG::do_global_code_motion()+0x51 (gcm.cpp:1644)
V [libjvm.so+0x9da1c4] Compile::Code_Gen()+0x2a4 (compile.cpp:2948)
V [libjvm.so+0x9dd043] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x1c23 (compile.cpp:885)
V [libjvm.so+0x832065] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1d5 (c2compiler.cpp:142)
V [libjvm.so+0x9e8c08] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x928 (compileBroker.cpp:2303)
V [libjvm.so+0x9e9898] CompileBroker::compiler_thread_loop()+0x478 (compileBroker.cpp:1961)
V [libjvm.so+0xe91e7c] JavaThread::thread_main_inner()+0xcc (javaThread.cpp:759)
V [libjvm.so+0x17ab9b6] Thread::call_run()+0xb6 (thread.cpp:225)
V [libjvm.so+0x1495ed7] thread_native_entry(Thread*)+0x127 (os_linux.cpp:849)
It is hard to say what is wrong without further investigation.
Affected:
JDK23, 22, 21, 17.
JKD11 does not have the required flags -XX:RepeatCompilation=100 -XX:+StressIGVN, so I'm not sure if it is affected, and same for older JDK.
Product does not seem to fail, but not sure if it would just create wrong results.
Similar bugs:
https://bugs.openjdk.org/browse/JDK-8238384
https://bugs.openjdk.org/browse/JDK-8288570
java -jar ~/Documents/asmtools-7.0-build/release/lib/asmtools.jar jasm X.jasm
/oracle-work/jdk-fork2/build/linux-x64-debug/jdk/bin/java -XX:CompileCommand=printcompilation,X::* -XX:RepeatCompilation=100 -XX:+StressIGVN -XX:CompileCommand=compileonly,X::test -Xcomp -XX:-TieredCompilation X
CompileCommand: PrintCompilation X.* bool PrintCompilation = true
CompileCommand: compileonly X.test bool compileonly = true
469 26 b X::test (89 bytes)
753 27 % b X::test @ 43 (89 bytes)
1932 28 b X::test (89 bytes)
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/oracle-work/jdk-fork2/open/src/hotspot/share/opto/gcm.cpp:793), pid=3737797, tid=3737811
# assert(store != load->find_exact_control(load->in(0))) failed: dependence cycle found
#
# JRE version: Java(TM) SE Runtime Environment (24.0) (fastdebug build 24-internal-2024-06-13-1913126.emanuel...)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 24-internal-2024-06-13-1913126.emanuel..., compiled mode, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0xd500fe] PhaseCFG::insert_anti_dependences(Block*, Node*, bool)+0x1cbe
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /oracle-work/xyz/core.3737797)
#
# An error report file with more information is saved as:
# /oracle-work/xyz/hs_err_pid3737797.log
#
# Compiler replay data is saved as:
# /oracle-work/xyz/replay_pid3737797.log
#
# If you would like to submit a bug report, please visit:
# https://bugreport.java.com/bugreport/crash.jsp
#
Current CompileTask:
C2:1975 28 b X::test (89 bytes)
Stack: [0x00007f7ae81fa000,0x00007f7ae82fb000], sp=0x00007f7ae82f66c0, free space=1009k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0xd500fe] PhaseCFG::insert_anti_dependences(Block*, Node*, bool)+0x1cbe (gcm.cpp:793)
V [libjvm.so+0xd561ee] PhaseCFG::schedule_late(VectorSet&, Node_Stack&)+0xa2e (gcm.cpp:1410)
V [libjvm.so+0xd56b57] PhaseCFG::global_code_motion()+0x407 (gcm.cpp:1521)
V [libjvm.so+0xd598a1] PhaseCFG::do_global_code_motion()+0x51 (gcm.cpp:1644)
V [libjvm.so+0x9da1c4] Compile::Code_Gen()+0x2a4 (compile.cpp:2948)
V [libjvm.so+0x9dd043] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x1c23 (compile.cpp:885)
V [libjvm.so+0x832065] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1d5 (c2compiler.cpp:142)
V [libjvm.so+0x9e8c08] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x928 (compileBroker.cpp:2303)
V [libjvm.so+0x9e9898] CompileBroker::compiler_thread_loop()+0x478 (compileBroker.cpp:1961)
V [libjvm.so+0xe91e7c] JavaThread::thread_main_inner()+0xcc (javaThread.cpp:759)
V [libjvm.so+0x17ab9b6] Thread::call_run()+0xb6 (thread.cpp:225)
V [libjvm.so+0x1495ed7] thread_native_entry(Thread*)+0x127 (os_linux.cpp:849)
- duplicates
-
JDK-8341976 C2: use_mem_state != load->find_exact_control(load->in(0)) assert failure
-
- Resolved
-