review (XS) for 7002666: eclipse CDT projects crash with compressed oops
Christian Thalinger
christian.thalinger at oracle.com
Wed Dec 1 01:32:04 PST 2010
On Nov 30, 2010, at 8:48 PM, Tom Rodriguez wrote:
> http://cr.openjdk.java.net/~never/7002666/
>
> 7002666: eclipse CDT projects crash with compressed oops
> Reviewed-by:
>
> When emitting the code to zero a newly allocated object C2 attempts to
> identify space that's already been initialized or extra space that
> isn't actually part of an instance. The logic for this should only be
> executed for instances and never for arrays but the logic doesn't
> explicitly test for arrays. It's normally protected in the array case
> because the klass is precise and the value of layout_helper will never
> match zeroes_done since it's always negative for arrays. In this case
> the newArray is producing something that's typed as Object so the
> klass input of the allocation says Object and it mistakenly assumes
> the rest of the array doesn't need zeroing. The fix is to only
> execute this logic for AllocateNodes. Tested with eclipse and with
> new test case.
>
> src/share/vm/opto/memnode.cpp
> test/compiler/7002666/Test7002666.java
Looks good. -- Christian
More information about the hotspot-compiler-dev
mailing list