Request for review: 8000968: NPG UseCompressedKlassPointers asserts withObjectAlignmentInBytes for > 32G Compressed Oops

Roland Westrelin roland.westrelin at oracle.com
Fri Jan 18 03:44:21 PST 2013


Hi Harold,

> I updated the webrev at http://cr.openjdk.java.net/~hseigel/bug_8000968_3/ <http://cr.openjdk.java.net/%7Ehseigel/bug_8000968_3/> with this change.

 696     } else if ((total_size <= OopEncodingHeapMax) && (mode != HeapBasedNarrowOop) &&
 697         (!UseCompressedKlassPointers ||
 698           (((OopEncodingHeapMax - heap_size) + Universe::class_metaspace_size()) <= KlassEncodingMetaspaceMax))) {

heap_size < OopEncodingHeapMax - KlassEncodingMetaspaceMax is possible, right? Then compressed klass pointers are off with this code. So wouldn't you also want to check for:

KlassEncodingMetaspaceMax + heap_size - Universe::class_metaspace_size() <= OopEncodingHeapMax

?

and then use KlassEncodingMetaspaceMax - Universe::class_metaspace_size() as base.

Roland.


More information about the hotspot-runtime-dev mailing list