6957882: nsk/sajdi tests failed with NullPointerException
authorkvn
Wed, 02 Jun 2010 12:02:49 -0700
changeset 5699 c864b4cae5fc
parent 5698 091095915ee6
child 5700 a78767273dc1
6957882: nsk/sajdi tests failed with NullPointerException Summary: VM.getObjectAlignmentInBytes() accesses intxType before it is created. Reviewed-by: never
hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Wed Jun 02 09:49:32 2010 -0700
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java	Wed Jun 02 12:02:49 2010 -0700
@@ -314,6 +314,13 @@
       isLP64 = debugger.getMachineDescription().isLP64();
     }
     bytesPerLong = db.lookupIntConstant("BytesPerLong").intValue();
+    heapWordSize = db.lookupIntConstant("HeapWordSize").intValue();
+    oopSize  = db.lookupIntConstant("oopSize").intValue();
+
+    intxType = db.lookupType("intx");
+    uintxType = db.lookupType("uintx");
+    boolType = (CIntegerType) db.lookupType("bool");
+
     minObjAlignmentInBytes = getObjectAlignmentInBytes();
     if (minObjAlignmentInBytes == 8) {
       logMinObjAlignmentInBytes = 3;
@@ -323,13 +330,6 @@
       throw new RuntimeException("Object alignment " + minObjAlignmentInBytes + " not yet supported");
     }
 
-    heapWordSize = db.lookupIntConstant("HeapWordSize").intValue();
-    oopSize  = db.lookupIntConstant("oopSize").intValue();
-
-    intxType = db.lookupType("intx");
-    uintxType = db.lookupType("uintx");
-    boolType = (CIntegerType) db.lookupType("bool");
-
     if (isCompressedOopsEnabled()) {
       // Size info for oops within java objects is fixed
       heapOopSize = (int)getIntSize();