comparison agent/src/share/classes/sun/jvm/hotspot/oops/java_lang_Class.java @ 6848:8e47bac5643a

7054512: Compress class pointers after perm gen removal Summary: support of compress class pointers in the compilers. Reviewed-by: kvn, twisti
author roland
date Tue, 09 Oct 2012 10:11:38 +0200
parents da91efe96a93
children
comparison
equal deleted inserted replaced
6847:65d07d9ee446 6848:8e47bac5643a
61 oopSizeField = new IntField(new NamedFieldIdentifier("oop_size"), oopSizeOffset, true); 61 oopSizeField = new IntField(new NamedFieldIdentifier("oop_size"), oopSizeOffset, true);
62 } 62 }
63 63
64 /** get Klass* field at offset hc_klass_offset from a java.lang.Class object */ 64 /** get Klass* field at offset hc_klass_offset from a java.lang.Class object */
65 public static Klass asKlass(Oop aClass) { 65 public static Klass asKlass(Oop aClass) {
66 if (VM.getVM().isCompressedHeadersEnabled()) { 66 return (Klass)Metadata.instantiateWrapperFor(aClass.getHandle().getAddressAt(klassOffset));
67 throw new InternalError("unimplemented");
68 } else {
69 return (Klass)Metadata.instantiateWrapperFor(aClass.getHandle().getAddressAt(klassOffset));
70 }
71 } 67 }
72 68
73 /** get oop_size field at offset oop_size_offset from a java.lang.Class object */ 69 /** get oop_size field at offset oop_size_offset from a java.lang.Class object */
74 public static long getOopSize(Oop aClass) { 70 public static long getOopSize(Oop aClass) {
75 return java_lang_Class.oopSizeField.getValue(aClass); 71 return java_lang_Class.oopSizeField.getValue(aClass);