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: 4682728
Votes 0
Synopsis CTW assertion at \src\share\vm\opto\block.cpp, 379
Category hotspot:compiler2
Reported Against 1.4.1 , hopper , 1.4.1_01
Release Fixed 1.4.1_03
State 10-Fix Delivered, Needs Verification, bug
Priority: 4-Low
Related Bugs 4775681 , 4799414 , 4852638
Submit Date 09-MAY-2002
Description



Following assertion occur when running Compile The Wrold tests on windows platform.
Binary: Hopper JDK build 11 server VM.

#
# HotSpot Virtual Machine Error, assertion failure
# Please report this error at
# http://java.sun.com/cgi-bin/bugreport.cgi
#
# Java VM: Java HotSpot(TM) Server VM (1.4.1-beta-b11-debug mixed mode)
#
# assert(pb->_nodes[ pb->_nodes.size() - pb->_num_succs ]->is_block_proj(), "too many control users, not a CFG?")
#
# Error ID: D:/BUILD_AREA/jdk1.4.1/hotspot\src\share\vm\opto\block.cpp, 379
#
# Problematic Thread: prio=5 tid=0x002AF3A8 nid=0x470 runnable 
#


Please look into rerun scripts for more detail.

#########################
# To reproduce the bug:
#########################
1. cd /net/jano.sfbay/export/disk20/GammaBase/Bugs/[bug ID]
2. Map sqesvr:/export/vsn to X:
3. run one of the shell scripts: 
   run.Dynamo4.1.0.jar.1.ksh
run.Dynamo4.5.0.jar.1.ksh
run.classes.jar.1.ksh

======================================================================



Simplified test case:

cat <<_EOF >bug.4682728.rc
#MinInliningThreshold=0 # 0 suppresses the bug
CompileOnly=SessionBeanManager.createEJBHome
+PrintOpto
#+PrintOptoInlining
#  1!  atg.ejbserver.SessionBeanManager::createEJBHome (342 bytes)
#       atg.ejbserver.SessionBeanManagerSuper::getEJBHomeClass @ 4 (5 bytes)
#       atg.ejbserver.SessionBeanManagerSuper::getEJBHomeClass @ 242 (5 bytes)
+CompileTheWorld
CompileTheWorldStartAt=894 # 895 suppresses the bug
CompileTheWorldStopAt=1057
_EOF

setenv TB_VM /net/sqesvr/export/vsn/VM/testbase/testbase_vm
$JAVA_HOME/bin/java_g -XX:Flags=bug.4682728.rc -Xbootclasspath/p:$TB_VM/src/jit/compiletheworld/jars/a-d/classes.jar

 xxxxx@xxxxx  2002-05-28
 xxxxx@xxxxx  10/12/04 20:30 GMT
Work Around
N/A
Evaluation
This happens on sparc as well
 xxxxx@xxxxx  2002-05-13

(This bug is a regression which occurred between the b02 and b03
promotions for 1.4.1.  Although it's nice to know, finally, that
this regression occured back then--in February--it's inconvenient
to fix this right now, while we're trying to freeze for beta.)

Root cause:  This is part of the bug-tail from a rewrite of the
instanceof/checkcast algorithm, which was putback 20010927-160457
to c2_baseline.  If an oop is always null, and gen_checkcast passes
it to null_check_oop, then gen_checkcast fails to recognize that
the normal control flow path goes dead, and keeps parsing.
The end result is two calls feeding off the same control edge
(the "oop is null" test).

 xxxxx@xxxxx  2002-05-28

The reason this bug is so oddly timed is that it is not really a bug.
The CTW run which produces it is missing the "-verify" flag,
so presumably one or more of the involved methods contain bad bytecodes.

I am lowering the priority and decommitting from hopper to reflect this.
 xxxxx@xxxxx  2002-05-29

This bug causes iMM4.5 failed on 1.4.1, please see bug 4775681.

 xxxxx@xxxxx  2002-12-20
Comments
  
  Include a link with my name & email   

Submitted On 07-MAY-2003
mpriddy
Which releases contain this fix?
The bug detail says this is fixed in 1.4.1_03. Has this been 
released yet? Or is this fix only going to be available in 1.4.2.



PLEASE NOTE: JDK6 is formerly known as Project Mustang