< prev index next >
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/classfile/ClassLoaderData.java
Print this page
*** 42,59 ****
private static synchronized void initialize(TypeDataBase db) throws WrongTypeException {
Type type = db.lookupType("ClassLoaderData");
classLoaderFieldOffset = type.getAddressField("_class_loader").getOffset();
nextField = type.getAddressField("_next");
klassesField = new MetadataField(type.getAddressField("_klasses"), 0);
! isUnsafeAnonymousField = new CIntField(type.getCIntegerField("_is_unsafe_anonymous"), 0);
dictionaryField = type.getAddressField("_dictionary");
}
private static long classLoaderFieldOffset;
private static AddressField nextField;
private static MetadataField klassesField;
! private static CIntField isUnsafeAnonymousField;
private static AddressField dictionaryField;
public ClassLoaderData(Address addr) {
super(addr);
}
--- 42,59 ----
private static synchronized void initialize(TypeDataBase db) throws WrongTypeException {
Type type = db.lookupType("ClassLoaderData");
classLoaderFieldOffset = type.getAddressField("_class_loader").getOffset();
nextField = type.getAddressField("_next");
klassesField = new MetadataField(type.getAddressField("_klasses"), 0);
! isShortlivedField = new CIntField(type.getCIntegerField("_is_shortlived"), 0);
dictionaryField = type.getAddressField("_dictionary");
}
private static long classLoaderFieldOffset;
private static AddressField nextField;
private static MetadataField klassesField;
! private static CIntField isShortlivedField;
private static AddressField dictionaryField;
public ClassLoaderData(Address addr) {
super(addr);
}
*** 74,85 ****
Address addr = getAddress().addOffsetTo(classLoaderFieldOffset);
VMOopHandle vmOopHandle = VMObjectFactory.newObject(VMOopHandle.class, addr);
return vmOopHandle.resolve();
}
! public boolean getisUnsafeAnonymous() {
! return isUnsafeAnonymousField.getValue(this) != 0;
}
public ClassLoaderData next() {
return instantiateWrapperFor(nextField.getValue(getAddress()));
}
--- 74,85 ----
Address addr = getAddress().addOffsetTo(classLoaderFieldOffset);
VMOopHandle vmOopHandle = VMObjectFactory.newObject(VMOopHandle.class, addr);
return vmOopHandle.resolve();
}
! public boolean getisShortlived() {
! return isShortlivedField.getValue(this) != 0;
}
public ClassLoaderData next() {
return instantiateWrapperFor(nextField.getValue(getAddress()));
}
< prev index next >