8059340: ConstantPool::_resolved_references is missing in heap dump
Reviewed-by: sspitsyn, stefank, twisti
--- a/jdk/src/java.base/share/classes/java/lang/Class.java Fri May 15 19:23:27 2015 +0300
+++ b/jdk/src/java.base/share/classes/java/lang/Class.java Thu May 21 18:23:01 2015 +0300
@@ -3653,4 +3653,7 @@
public AnnotatedType[] getAnnotatedInterfaces() {
return TypeAnnotationParser.buildAnnotatedInterfaces(getRawTypeAnnotations(), getConstantPool(), this);
}
+
+ /** An array of resolved objects from constant pool. Used by JVM. */
+ private transient Object[] resolvedReferences;
}
--- a/jdk/src/java.base/share/classes/sun/reflect/Reflection.java Fri May 15 19:23:27 2015 +0300
+++ b/jdk/src/java.base/share/classes/sun/reflect/Reflection.java Thu May 21 18:23:01 2015 +0300
@@ -46,7 +46,7 @@
map.put(Reflection.class,
new String[] {"fieldFilterMap", "methodFilterMap"});
map.put(System.class, new String[] {"security"});
- map.put(Class.class, new String[] {"classLoader"});
+ map.put(Class.class, new String[] {"classLoader", "resolvedReferences"});
fieldFilterMap = map;
methodFilterMap = new HashMap<>();