United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 6760773 UseCompressedOops is broken with UseParNewGC
6760773 : UseCompressedOops is broken with UseParNewGC

Details
Type:
Bug
Submit Date:
2008-10-17
Status:
Closed
Updated Date:
2011-03-08
Project Name:
JDK
Resolved Date:
2011-03-08
Component:
hotspot
OS:
generic
Sub-Component:
runtime
CPU:
generic
Priority:
P2
Resolution:
Fixed
Affected Versions:
hs14
Fixed Versions:
hs14

Related Reports
Backport:
Backport:

Sub Tasks

Description
Also, UseCompressedOops was supposed to be turned on by default in hs14, bug somehow that changeset was lost.

Coleen Phillimore - Sun Microsystems wrote:
>
>
> On 09/26/08 20:07, Vladimir Kozlov wrote:
>> First, UseParNewGC does not work with compressed oops:
> It is supposed to.  Is it broken or just not performant?
>
> thanks,
> Coleen
>>
>> pf-t5120-1% gamma -XX:InlineSmallCode=1400 -XX:FreqInlineSize=210 -XX:+UseCompressedOops -XX:+AggressiveOpts -XX:ParallelGCThreads=40 -XX:+UseLargePages -XX:LargePageSizeInBytes=256m -XX:+AlwaysPreTouch -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xmx28g -Xms28g -Xmn22g -XX:+UseParNewGC -XX:+PrintTenuringDistribution -Xss256k -cp jbb.jar:check.jar spec.jbb.JBBmain
>>
>> Exception in thread "main" java.lang.ClassCastException: java.util.LinkedHashMap$Entry cannot be cast to java.util.Map$Entry
>>         at java.security.Provider.ensureLegacyParsed(Provider.java:536)

                                    

Comments
EVALUATION

6760773: UseCompressedOops is broken with UseParNewGC
Summary: sparc code for gen_subtype_check was doing an ld for a compressed oop with the sign bit set so not comparing, leading to a ClassCastException.
Reviewed-by: phh, never, acorn, kvn, xlu

Fixed in b08, I think.
                                     
2008-11-10
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/05db98ed59ba
                                     
2008-11-07
EVALUATION

Can't turn on compressed oops by default because it fails with JDK build.  Will file another bug for that.
                                     
2008-11-05
EVALUATION

In gen_subtype_check there was an ld() for a compressed oop rather than an lduw() before comparing to another compressed oop.  I also want to turn on cmopressed oops by default by this fix.
                                     
2008-10-29



Hardware and Software, Engineered to Work Together