JDK-8027571 : fatal error: meet not symmetric
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: hs25
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2013-10-30
  • Updated: 2014-07-29
  • Resolved: 2014-01-07
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.
JDK 8 JDK 9
8u20Fixed 9 b02Fixed
Related Reports
Relates :  
Description
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/opt/jprt/T/P1/203123.amurillo/s/src/share/vm/opto/type.cpp:667), pid=14552, tid=139798586865408
#  fatal error: meet not symmetric
#
# JRE version: Java(TM) SE Runtime Environment (8.0-b113) (build 1.8.0-ea-fastdebug-b113)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.0-b56-internal-201310252031.amurillo.hs25-b56-snapshot-fastdebug mixed mode linux-amd64 )
# Core dump written. Default location: /scratch/local/aurora/sandbox/results/dacapo/core or core.14552
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.sun.com/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x00007f4528154800):  JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=14641, stack(0x00007f25650c3000,0x00007f25651c4000)]

Stack: [0x00007f25650c3000,0x00007f25651c4000],  sp=0x00007f25651bfab0,  free space=1010k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xf5dfaa]  VMError::report_and_die()+0x2da
V  [libjvm.so+0x6defc0]  report_fatal(char const*, int, char const*)+0x80
V  [libjvm.so+0xefc78e]  Type::meet(Type const*) const+0x30e
V  [libjvm.so+0xefcd3d]  TypeOopPtr::meet_speculative(TypeOopPtr const*) const+0x2d
V  [libjvm.so+0xf00048]  TypeAryPtr::xmeet_helper(Type const*) const+0x328
V  [libjvm.so+0xef5ea2]  TypeOopPtr::xmeet(Type const*) const+0x12
V  [libjvm.so+0xefc587]  Type::meet(Type const*) const+0x107
V  [libjvm.so+0xd3ad3a]  Parse::sharpen_type_after_if(BoolTest::mask, Node*, Type const*, Node*, Type const*)+0xca
V  [libjvm.so+0xd3ea15]  Parse::do_if(BoolTest::mask, Node*)+0x845
V  [libjvm.so+0xd41a72]  Parse::do_one_bytecode()+0x2df2
V  [libjvm.so+0xd3359c]  Parse::do_one_block()+0x4fc
V  [libjvm.so+0xd33dca]  Parse::do_all_blocks()+0x18a
V  [libjvm.so+0xd3640f]  Parse::Parse(JVMState*, ciMethod*, float, Parse*)+0x198f
V  [libjvm.so+0x539ab9]  ParseGenerator::generate(JVMState*, Parse*)+0xb9
V  [libjvm.so+0x76fa74]  Parse::do_call()+0x3f4
V  [libjvm.so+0xd41c3d]  Parse::do_one_bytecode()+0x2fbd
V  [libjvm.so+0xd3359c]  Parse::do_one_block()+0x4fc
V  [libjvm.so+0xd33dca]  Parse::do_all_blocks()+0x18a
V  [libjvm.so+0xd3640f]  Parse::Parse(JVMState*, ciMethod*, float, Parse*)+0x198f
V  [libjvm.so+0x539ab9]  ParseGenerator::generate(JVMState*, Parse*)+0xb9
V  [libjvm.so+0x65a78b]  Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool)+0x144b
V  [libjvm.so+0x537541]  C2Compiler::compile_method(ciEnv*, ciMethod*, int)+0x2c1
V  [libjvm.so+0x66595e]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xace
V  [libjvm.so+0x666874]  CompileBroker::compiler_thread_loop()+0x5d4
V  [libjvm.so+0xee1bc1]  JavaThread::thread_main_inner()+0x221
V  [libjvm.so+0xee1ebd]  JavaThread::run()+0x2ad
V  [libjvm.so+0xcf4f58]  java_start(Thread*)+0x108


Current CompileTask:
C2:  55872 7092       4       org.eclipse.jdt.internal.compiler.ast.SingleNameReference::generateCode (610 bytes)
Comments
Similarly to what is done for instances, meet of exact classes in upper lattice or constant should fall down to NotNull.
07-01-2014

attached ciReplay and hs_err
30-10-2013

vm_version: 1.8.0 b113 (1.8.0-ea-fastdebug-b113) / 25.0 b56 (25.0-b56-internal-201310252031.amurillo.hs25-b56-snapshot-fastdebug) vm_opts: -Xmixed -d64 -server -XX:+UnlockExperimentalVMOptions -XX:+UseTypeSpeculation -XX:TypeProfileLevel=222 Impact is Medium : a fatal in #ifdef ASSERT, there are no errors on product build Likelihood is Low : UseTypeSpeculation is a experimental feature disabled by default Workarond is High : workarond is unkown ILW=MLH=>P4
30-10-2013

=== Meet Not Symmetric === t = stable:java/lang/Object:TopPTR *,iid=top[int:max..0]:AnyNull:exact *,iid=top this= stable:org/eclipse/jdt/internal/compiler/lookup/VariableBinding:TopPTR *,iid=top[int:0]<ciObjArray length=0 type=<ciObjArrayKlass name=[Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding; ident=792 address=0xa96b6798> ident=976 SCAVENGABLE address=0x542f85e8> *,iid=top mt=(t meet this)= stable:org/eclipse/jdt/internal/compiler/lookup/VariableBinding:TopPTR *,iid=top[int:0]<ciObjArray length=0 type=<ciObjArrayKlass name=[Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding; ident=792 address=0xa96b6798> ident=976 SCAVENGABLE address=0x542f85e8> *,iid=top t_dual= java/lang/Object *[int:>=0]:NotNull:exact * this_dual= org/eclipse/jdt/internal/compiler/lookup/VariableBinding *[int:0]<ciObjArray length=0 type=<ciObjArrayKlass name=[Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding; ident=792 address=0xa96b6798> ident=976 SCAVENGABLE address=0x542f85e8> * mt_dual= org/eclipse/jdt/internal/compiler/lookup/VariableBinding *[int:0]<ciObjArray length=0 type=<ciObjArrayKlass name=[Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding; ident=792 address=0xa96b6798> ident=976 SCAVENGABLE address=0x542f85e8> * mt_dual meet t_dual= java/lang/Object *[int:>=0]:NotNull * mt_dual meet this_dual= org/eclipse/jdt/internal/compiler/lookup/VariableBinding *[int:0]<ciObjArray length=0 type=<ciObjArrayKlass name=[Lorg/eclipse/jdt/internal/compiler/lookup/VariableBinding; ident=792 address=0xa96b6798> ident=976 SCAVENGABLE address=0x542f85e8> *
30-10-2013