JDK-8265726 : [lworld] C2 compilation fails with assert "uses must be dominated by definitions"
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: repo-valhalla
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-04-22
  • Updated: 2021-07-30
  • Resolved: 2021-04-26
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
repo-valhallaFixed
Related Reports
Relates :  
Relates :  
Relates :  
Description
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/oracle/valhalla2/open/src/hotspot/share/opto/block.cpp:1264), pid=627247, tid=627255
#  assert(n->is_Root() || n->is_Region() || n->is_Phi() || n->is_MachMerge() || def_block->dominates(block)) failed: uses must be dominated by definitions

Current CompileTask:
C2:   6863 1896    b  4       java.lang.invoke.LambdaForm$MH/0x0000000800001000::invokeExact_MT (32 bytes)

Stack: [0x00007f1b99a36000,0x00007f1b99b37000],  sp=0x00007f1b99b32220,  free space=1008k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x6e1cb5]  PhaseCFG::verify() const+0x405
V  [libjvm.so+0xa7239f]  Compile::Code_Gen()+0x2af
V  [libjvm.so+0xa7c7d6]  Compile::Compile(ciEnv*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0x23d6
V  [libjvm.so+0x8858a8]  C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*)+0x1f8
V  [libjvm.so+0xa8c381]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xc91
V  [libjvm.so+0xa8d0c8]  CompileBroker::compiler_thread_loop()+0x5a8
V  [libjvm.so+0x199b5d1]  JavaThread::thread_main_inner()+0x271
V  [libjvm.so+0x19a3410]  Thread::call_run()+0x100
V  [libjvm.so+0x164de4e]  thread_native_entry(Thread*)+0x10e

The assert was added by JDK-8263227 and is currently disabled due to this failure.