-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
P3
-
Affects Version/s: 26
-
Component/s: hotspot
The attached Java Fuzzer failure starts to fail after JDK-8327963:
To reproduce:
$ java -Xcomp -XX:CompileOnly=Test::* Test.java
$ java -Xcomp -XX:CompileOnly=Reduced::test Reduced.java
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/opt/mach5/mesos/work_dir/slaves/526fbd26-20de-495c-9a19-a04adc16f7d1-S29385/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/59242595-25d7-4837-bb4e-43e3075607c2/runs/5ab8c845-cd4e-457f-b301-c998a3d29c8f/workspace/open/src/hotspot/share/opto/phaseX.cpp:784), pid=2595404, tid=2595423
# assert(no_dead_loop) failed: dead loop detected
#
# JRE version: Java(TM) SE Runtime Environment (26.0+23) (fastdebug build 26-ea+23-2368)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+23-2368, compiled mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x1864905] PhaseGVN::dead_loop_check(Node*) [clone .part.0]+0x1d5
...........
Command Line: -Xmx1G -XX:+IgnoreUnrecognizedVMOptions -XX:CompileCommand=quiet -XX:CompileCommand=compileonly,*Test*::* -Xcomp -XX:MaxRAMPercentage=4.16667 -Dtest.boot.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk/25/37/bundles/linux-x64/jdk-25_linux-x64_bin.tar.gz/jdk-25 -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/526fbd26-20de-495c-9a19-a04adc16f7d1-S29910/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/7e60fabf-15d5-4fe7-b57d-424147722cf1/runs/c8452512-ef5f-4959-80cc-de240403ff4e/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_javafuzzer_QuickTest_java/tmp Test
...........
Current CompileTask:
C2:713 49 !b 4 Test::vMeth (259 bytes)
Stack: [0x00007fbc2961c000,0x00007fbc2971c000], sp=0x00007fbc29717000, free space=1004k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x1864905] PhaseGVN::dead_loop_check(Node*) [clone .part.0]+0x1d5 (phaseX.cpp:784)
V [libjvm.so+0x18746d9] PhaseIterGVN::transform_old(Node*)+0x529 (phaseX.cpp:767)
V [libjvm.so+0x16a43d9] MergeMemNode::Ideal(PhaseGVN*, bool)+0x329 (memnode.cpp:5779)
V [libjvm.so+0x187426d] PhaseIterGVN::transform_old(Node*)+0xbd (phaseX.cpp:668)
V [libjvm.so+0x1878a95] PhaseIterGVN::optimize()+0xc5 (phaseX.cpp:1054)
V [libjvm.so+0xb88f82] Compile::Optimize()+0x332 (compile.cpp:2327)
V [libjvm.so+0xb8cab3] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x2023 (compile.cpp:860)
V [libjvm.so+0x9a5373] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x4a3 (c2compiler.cpp:147)
V [libjvm.so+0xb9bfb0] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x780 (compileBroker.cpp:2345)
V [libjvm.so+0xb9d810] CompileBroker::compiler_thread_loop()+0x530 (compileBroker.cpp:1989)
V [libjvm.so+0x1100a8b] JavaThread::thread_main_inner()+0x13b (javaThread.cpp:776)
V [libjvm.so+0x1b7a4f6] Thread::call_run()+0xb6 (thread.cpp:242)
V [libjvm.so+0x17e25f8] thread_native_entry(Thread*)+0x118 (os_linux.cpp:879)
To reproduce:
$ java -Xcomp -XX:CompileOnly=Test::* Test.java
$ java -Xcomp -XX:CompileOnly=Reduced::test Reduced.java
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/opt/mach5/mesos/work_dir/slaves/526fbd26-20de-495c-9a19-a04adc16f7d1-S29385/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/59242595-25d7-4837-bb4e-43e3075607c2/runs/5ab8c845-cd4e-457f-b301-c998a3d29c8f/workspace/open/src/hotspot/share/opto/phaseX.cpp:784), pid=2595404, tid=2595423
# assert(no_dead_loop) failed: dead loop detected
#
# JRE version: Java(TM) SE Runtime Environment (26.0+23) (fastdebug build 26-ea+23-2368)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+23-2368, compiled mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x1864905] PhaseGVN::dead_loop_check(Node*) [clone .part.0]+0x1d5
...........
Command Line: -Xmx1G -XX:+IgnoreUnrecognizedVMOptions -XX:CompileCommand=quiet -XX:CompileCommand=compileonly,*Test*::* -Xcomp -XX:MaxRAMPercentage=4.16667 -Dtest.boot.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk/25/37/bundles/linux-x64/jdk-25_linux-x64_bin.tar.gz/jdk-25 -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/526fbd26-20de-495c-9a19-a04adc16f7d1-S29910/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/7e60fabf-15d5-4fe7-b57d-424147722cf1/runs/c8452512-ef5f-4959-80cc-de240403ff4e/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_javafuzzer_QuickTest_java/tmp Test
...........
Current CompileTask:
C2:713 49 !b 4 Test::vMeth (259 bytes)
Stack: [0x00007fbc2961c000,0x00007fbc2971c000], sp=0x00007fbc29717000, free space=1004k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x1864905] PhaseGVN::dead_loop_check(Node*) [clone .part.0]+0x1d5 (phaseX.cpp:784)
V [libjvm.so+0x18746d9] PhaseIterGVN::transform_old(Node*)+0x529 (phaseX.cpp:767)
V [libjvm.so+0x16a43d9] MergeMemNode::Ideal(PhaseGVN*, bool)+0x329 (memnode.cpp:5779)
V [libjvm.so+0x187426d] PhaseIterGVN::transform_old(Node*)+0xbd (phaseX.cpp:668)
V [libjvm.so+0x1878a95] PhaseIterGVN::optimize()+0xc5 (phaseX.cpp:1054)
V [libjvm.so+0xb88f82] Compile::Optimize()+0x332 (compile.cpp:2327)
V [libjvm.so+0xb8cab3] Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*)+0x2023 (compile.cpp:860)
V [libjvm.so+0x9a5373] C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x4a3 (c2compiler.cpp:147)
V [libjvm.so+0xb9bfb0] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x780 (compileBroker.cpp:2345)
V [libjvm.so+0xb9d810] CompileBroker::compiler_thread_loop()+0x530 (compileBroker.cpp:1989)
V [libjvm.so+0x1100a8b] JavaThread::thread_main_inner()+0x13b (javaThread.cpp:776)
V [libjvm.so+0x1b7a4f6] Thread::call_run()+0xb6 (thread.cpp:242)
V [libjvm.so+0x17e25f8] thread_native_entry(Thread*)+0x118 (os_linux.cpp:879)
- caused by
-
JDK-8327963 C2: fix construction of memory graph around Initialize node to prevent incorrect execution if allocation is removed
-
- Resolved
-