diff agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java @ 689:f30ba3b36599

6822407: heapOopSize lookup is incorrect in Serviceability Agent. Summary: heapOopSize symbol should be declared as constant in vmStructs and should not be looked up in readVMIntConstants(). Reviewed-by: never, swamyv, coleenp
author poonam
date Fri, 27 Mar 2009 10:29:54 -0700
parents 60bfce711da4
children 23276f80d930
line wrap: on
line diff
--- a/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Fri Mar 27 01:35:39 2009 -0500
+++ b/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Fri Mar 27 10:29:54 2009 -0700
@@ -342,12 +342,14 @@
       throw new RuntimeException("Attempt to initialize VM twice");
     }
     soleInstance = new VM(db, debugger, debugger.getMachineDescription().isBigEndian());
-    debugger.putHeapConst(soleInstance.getHeapOopSize(), Universe.getNarrowOopBase(),
-                          Universe.getNarrowOopShift());
+
     for (Iterator iter = vmInitializedObservers.iterator(); iter.hasNext(); ) {
       ((Observer) iter.next()).update(null, null);
     }
 
+    debugger.putHeapConst(soleInstance.getHeapOopSize(), Universe.getNarrowOopBase(),
+                          Universe.getNarrowOopShift());
+
   }
 
   /** This is used by the debugging system */