United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 6646020 assert(in_bb(n),"must be in block") in -Xcomp mode
6646020 : assert(in_bb(n),"must be in block") in -Xcomp mode

Details
Type:
Bug
Submit Date:
2007-12-29
Status:
Closed
Updated Date:
2012-02-01
Project Name:
JDK
Resolved Date:
2011-03-07
Component:
hotspot
OS:
linux,generic,solaris_10,windows_xp
Sub-Component:
compiler
CPU:
x86,sparc,generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
hs11,6u10,6u11
Fixed Versions:
hs13

Related Reports
Backport:
Backport:
Backport:
Backport:
Duplicate:
Duplicate:

Sub Tasks

Description
This assertion is observed at least on linux-i586/amd64 with both latest jdk6 (1.6.0_10-ea-b09) and jdk7 (1.7.0-ea-b24):
	#  Internal Error (/BUILD_AREA/jdk7/hotspot/src/share/vm/opto/superword.cpp:437), pid=15100, tid=2994375600
	#  Error: assert(in_bb(n),"must be in block")

It occurs only in -Xcomp mode.

Testcase and hs_err file are attached.
Attached a testcase for solaris-i586/amd64. 
The assertion occurs only with C2.

                                    

Comments
EVALUATION

The logic for testing which loops can be vectorized is missing a check
for no work on the backedge.  The RPO workspace tripped over this too
so I'm fixing it under this bug report.
                                     
2008-04-04
SUGGESTED FIX

repo:       /net/jano2.sfbay/export2/hotspot/hg/hotspot-comp.clean
changeset:  90:a7d0f95410bd
user:       never
date:       Thu Apr 03 21:26:03 2008 -0700
description:
6646020: assert(in_bb(n),"must be in block") in -Xcomp mode
Reviewed-by: kvn, rasbold

files:
src/share/vm/opto/superword.cpp test/compiler/6646020/Tester.java
                                     
2008-04-04
WORK AROUND

-XX:-UseSuperWord
                                     
2008-01-07



Hardware and Software, Engineered to Work Together