comparison agent/src/share/classes/sun/jvm/hotspot/oops/OopUtilities.java @ 113:ba764ed4b6f2

6420645: Create a vm that uses compressed oops for up to 32gb heapsizes Summary: Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
author coleenp
date Sun, 13 Apr 2008 17:43:42 -0400
parents a61af66fc99e
children b9ebd46331d2
comparison
equal deleted inserted replaced
110:a49a647afe9a 113:ba764ed4b6f2
279 hcKlassOffset += (db.lookupIntConstant("java_lang_Class::hc_klass_offset").intValue() * 279 hcKlassOffset += (db.lookupIntConstant("java_lang_Class::hc_klass_offset").intValue() *
280 db.getAddressSize()); 280 db.getAddressSize());
281 } catch (RuntimeException re) { 281 } catch (RuntimeException re) {
282 // ignore, currently java_lang_Class::hc_klass_offset is zero 282 // ignore, currently java_lang_Class::hc_klass_offset is zero
283 } 283 }
284 284 if (VM.getVM().isCompressedOopsEnabled()) {
285 hcKlassField = new OopField(new NamedFieldIdentifier("hc_klass"), hcKlassOffset, true); 285 hcKlassField = new NarrowOopField(new NamedFieldIdentifier("hc_klass"), hcKlassOffset, true);
286 } else {
287 hcKlassField = new OopField(new NamedFieldIdentifier("hc_klass"), hcKlassOffset, true);
288 }
286 } 289 }
287 } 290 }
288 291
289 /** get klassOop field at offset hc_klass_offset from a java.lang.Class object */ 292 /** get klassOop field at offset hc_klass_offset from a java.lang.Class object */
290 public static Klass classOopToKlass(Oop aClass) { 293 public static Klass classOopToKlass(Oop aClass) {