Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6726999
Votes 0
Synopsis nsk/stress/jck12a/jck12a010 assert(n != __null,"Bad immediate dominator info.")
Category hotspot:compiler2
Reported Against
Release Fixed hs14(b03)
State 10-Fix Delivered, bug
Priority: 4-Low
Related Bugs 6723160
Submit Date 17-JUL-2008
Description
After 6723160 changes nsk/stress/jck12a/jck12a010 failed on all platforms:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/tmp/jprt-jprtadm/P1/B/230701.kvn/source/src/share/vm/opto/loopnode.hpp:634), pid=20237, tid=1086507360
#  Error: assert(n != __null,"Bad immediate dominator info.")
#
# Java VM: OpenJDK 64-Bit Server VM (14.0-b01-2008-07-16-230701.kvn.6723160-fastdebug compiled mode linux-amd64 )
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

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

Current thread (0x0000002abee93800):  JavaThread "CompilerThread1" daemon [_thread_in_native, id=20251, stack(0x0000000040b2c000,0x0000000040c2d000)]

Stack: [0x0000000040b2c000,0x0000000040c2d000],  sp=0x0000000040c25b50,  free space=998k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xa4e622];;  _ZN7VMError14report_and_dieEv+0x262
V  [libjvm.so+0x4071fe];;  _Z24report_assertion_failurePKciS0_+0x6e
V  [libjvm.so+0x77f109];;  _ZNK14PhaseIdealLoop14idom_no_updateEP4Node+0xd9
V  [libjvm.so+0x792fb0];;  _ZN14PhaseIdealLoop20build_loop_late_postEP4NodePKS_+0x230
V  [libjvm.so+0x7929ca];;  _ZN14PhaseIdealLoop15build_loop_lateER9VectorSetR9Node_ListR10Node_StackPKS_+0xda
V  [libjvm.so+0x78c7c3];;  _ZN14PhaseIdealLoopC1ER12PhaseIterGVNPKS_b+0x8c3
V  [libjvm.so+0x3a111a];;  _ZN7Compile8OptimizeEv+0x1ea
V  [libjvm.so+0x39c2ad];;  _ZN7CompileC1EP5ciEnvP10C2CompilerP8ciMethodibb+0x8fd
V  [libjvm.so+0x2cda6c];;  _ZN10C2Compiler14compile_methodEP5ciEnvP8ciMethodi+0x8c
V  [libjvm.so+0x3accc9];;  _ZN13CompileBroker25invoke_compiler_on_methodEP11CompileTask+0x4c9
V  [libjvm.so+0x3ac0df];;  _ZN13CompileBroker20compiler_thread_loopEv+0x55f
V  [libjvm.so+0x9eb4b3];;  _Z21compiler_thread_entryP10JavaThreadP6Thread+0x13
V  [libjvm.so+0x9e0915];;  _ZN10JavaThread17thread_main_innerEv+0xd5
V  [libjvm.so+0x9e07dd];;  _ZN10JavaThread3runEv+0xfd
V  [libjvm.so+0x85faa6];;  _Z10java_startP6Thread+0x166


Current CompileTask:
C2: 27% !b  javasoft.sqe.tests.api.java.io.LineNumberInputStream.MarkResetTests.LineNumberInputStream2009()Ljavasoft/sqe/harness/Status; @ 47 (604 bytes)
Posted Date : 2008-07-17 20:32:25.0
Work Around
N/A
Evaluation
http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/b0fe4deeb9fb
Posted Date : 2008-07-29 02:26:39.0

The flow-insensitive escape analysis can't separate cases
when an allocation happened on the main path or in a loop
or on a different control branch. A dominator info processing
may not find it when such allocation is referenced further
in a graph:
Point p[] = new Point[1];
if ( x ) p[0] = new Point();
if (p[0] != NULL) p[0].x = x;

The main cause of it is that a default initialization by NULL
captured by Initialize node is not recorded in EA Connection Graph.
As result EA thinks that there is only one value - new object and
mark it as scalar replaceable. For scalar replaceable objects
we do aggressive memory nodes moves (for example, skip calls).
And this is where the dominator info processing hits the problem
when it tries to find the place where to put a memory node.
Posted Date : 2008-07-29 02:32:57.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang