diff graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMetaspaceConstant.java @ 18176:c2270ad35f57

Better construction of data section and data patches.
author Roland Schatz <roland.schatz@oracle.com>
date Mon, 27 Oct 2014 14:07:49 +0100
parents e43591136d9f
children 9619ba4daf4c
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMetaspaceConstant.java	Mon Oct 27 13:39:12 2014 -0700
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotMetaspaceConstant.java	Mon Oct 27 14:07:49 2014 +0100
@@ -26,12 +26,12 @@
 
 import com.oracle.graal.api.meta.*;
 
-public final class HotSpotMetaspaceConstant extends PrimitiveConstant implements HotSpotConstant {
+public final class HotSpotMetaspaceConstant extends PrimitiveConstant implements HotSpotConstant, VMConstant {
 
     private static final long serialVersionUID = 1003463314013122983L;
 
-    public static Constant forMetaspaceObject(Kind kind, long primitive, Object metaspaceObject) {
-        return new HotSpotMetaspaceConstant(kind, primitive, metaspaceObject);
+    public static Constant forMetaspaceObject(Kind kind, long primitive, Object metaspaceObject, boolean compressed) {
+        return new HotSpotMetaspaceConstant(kind, primitive, metaspaceObject, compressed);
     }
 
     public static Object getMetaspaceObject(Constant constant) {
@@ -39,10 +39,12 @@
     }
 
     private final Object metaspaceObject;
+    private final boolean compressed;
 
-    private HotSpotMetaspaceConstant(Kind kind, long primitive, Object metaspaceObject) {
+    private HotSpotMetaspaceConstant(Kind kind, long primitive, Object metaspaceObject, boolean compressed) {
         super(kind, primitive);
         this.metaspaceObject = metaspaceObject;
+        this.compressed = compressed;
     }
 
     @Override
@@ -57,6 +59,6 @@
 
     @Override
     public String toString() {
-        return super.toString() + "{" + metaspaceObject + "}";
+        return super.toString() + "{" + metaspaceObject + (compressed ? ";compressed}" : "}");
     }
 }