diff graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java @ 12559:ae412befde21

read HotSpotVMConfig fields from HotSpot's vmStructs via annotations
author twisti
date Wed, 23 Oct 2013 19:50:14 -0700
parents f87c68d79f07
children 3f34b8f91cc5
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java	Tue Oct 22 23:16:03 2013 -0700
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotResolvedObjectType.java	Wed Oct 23 19:50:14 2013 -0700
@@ -488,6 +488,13 @@
         return Constant.forIntegerKind(runtime().getTarget().wordKind, metaspaceKlass, this);
     }
 
+    /**
+     * Gets the address of the C++ Klass object for this type.
+     */
+    public long metaspaceKlass() {
+        return metaspaceKlass;
+    }
+
     public boolean isPrimaryType() {
         return runtime().getConfig().secondarySuperCacheOffset != superCheckOffset();
     }
@@ -500,7 +507,7 @@
     public long prototypeMarkWord() {
         HotSpotVMConfig config = runtime().getConfig();
         if (isArray()) {
-            return config.arrayPrototypeMarkWord;
+            return config.arrayPrototypeMarkWord();
         } else {
             return unsafeReadWord(metaspaceKlass + config.prototypeMarkWordOffset);
         }