United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6875967 CTW fails with./generated/adfiles/ad_sparc.cpp:6711
JDK-6875967 : CTW fails with./generated/adfiles/ad_sparc.cpp:6711

Details
Type:
Bug
Submit Date:
2009-08-26
Status:
Closed
Updated Date:
2011-03-08
Project Name:
JDK
Resolved Date:
2011-03-08
Component:
hotspot
OS:
generic
Sub-Component:
compiler
CPU:
x86
Priority:
P4
Resolution:
Fixed
Affected Versions:
hs16
Fixed Versions:
hs17 (b02)

Related Reports
Backport:
Backport:

Sub Tasks

Description
Note: issue is reproducible with both compilers.
For sparcv9 assertion is on the 6719 line.

Ti reproduce run ( I used vmsqe.russia):
/net/vmsqe.russia/export/jdk/re/7/promoted/ea/b68/binaries/solaris-sparc/fastdebug//bin/java -server   -XX:-ShowMessageBoxOnError -Xverify:all  -XX:+CompileTheWorld   -XX:CompileTheWorldStartAt=2223 -Xbootclasspath/p:/net/vmsqe.russia/export/testbase/ctw/build/../jars/ctw/jars/jars/u-z/weblogicaux.jar

Output:
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/ad_sparc.cpp:6711
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (../generated/adfiles/ad_sparc.cpp:6711), pid=12149, tid=10
#  Error: assert(VerifyOops || MachNode::size(ra_) <= 3*4,"bad fixed size")
#
# JRE version: 7.0-b68
# Java VM: Java HotSpot(TM) Server VM (16.0-b07-fastdebug mixed mode solaris-sparc )
# An error report file with more information is saved as:
# /tmp/hs_err_pid12149.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
Current thread is 10
Dumping core ...

                                    

Comments
PUBLIC COMMENTS

Contrary to the description this can't happen with client.
                                     
2009-08-26
EVALUATION

The actual size for loadI2L_immI in sparc.ad is either 3 or 4 instructions but it's statically declared as 3.
                                     
2009-08-26
SUGGESTED FIX

diff -r aba04734b61e src/cpu/sparc/vm/sparc.ad
--- a/src/cpu/sparc/vm/sparc.ad
+++ b/src/cpu/sparc/vm/sparc.ad
@@ -5707,7 +5707,7 @@ instruct loadUS2L_immI16(iRegL dst, memo
   effect(TEMP dst, TEMP tmp);
   ins_cost(MEMORY_REF_COST + 2*DEFAULT_COST);
 
-  size(3*4);
+  size((3+1)*4);  // set may use two instructions.
   format %{ "LDUH   $mem,$dst\t! ushort/char & 16-bit mask -> long\n\t"
             "SET    $mask,$tmp\n\t"
             "AND    $dst,$tmp,$dst" %}
@@ -5851,7 +5851,7 @@ instruct loadI2L_immI(iRegL dst, memory 
   effect(TEMP dst, TEMP tmp);
   ins_cost(MEMORY_REF_COST + 2*DEFAULT_COST);
 
-  size(3*4);
+  size((3+1)*4);  // set may use two instructions.
   format %{ "LDUW   $mem,$dst\t! int & 32-bit mask -> long\n\t"
             "SET    $mask,$tmp\n\t"
             "AND    $dst,$tmp,$dst" %}
                                     
2009-08-27
EVALUATION

The same applies to loadUS2L_immI16.
                                     
2009-08-27
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/1fbd5d696bf4
                                     
2009-08-31



Hardware and Software, Engineered to Work Together