changeset 31071:b455d36ef73c

8059340: ConstantPool::_resolved_references is missing in heap dump Reviewed-by: sspitsyn, stefank, twisti
author vlivanov
date Thu, 21 May 2015 18:23:01 +0300
parents d6c79efc10fe
children c6a387636aa5
files jdk/src/java.base/share/classes/java/lang/Class.java jdk/src/java.base/share/classes/sun/reflect/Reflection.java
diffstat 2 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- 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<>();