changeset 7022:231cfb5490d3

Merge
author Lukas Stadler <lukas.stadler@jku.at>
date Mon, 26 Nov 2012 12:03:46 +0100
parents cc72b8b5edca (diff) 17eeac928874 (current diff)
children be508977fb47
files graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/AddressMap.java
diffstat 2 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualObjectNode.java	Fri Nov 23 16:03:39 2012 +0100
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualObjectNode.java	Mon Nov 26 12:03:46 2012 +0100
@@ -24,6 +24,7 @@
 
 import com.oracle.graal.api.meta.*;
 import com.oracle.graal.graph.*;
+import com.oracle.graal.nodes.*;
 import com.oracle.graal.nodes.calc.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.graal.nodes.type.*;
@@ -52,4 +53,8 @@
     }
 
     public abstract Object fieldName(int i);
+
+    public void materializeAt(@SuppressWarnings("unused") FixedNode fixed) {
+        // nothing to do in here - this method allows subclasses to respond to materialization
+    }
 }
--- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/BlockState.java	Fri Nov 23 16:03:39 2012 +0100
+++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/BlockState.java	Mon Nov 26 12:03:46 2012 +0100
@@ -119,6 +119,7 @@
             materializeEffects.addFixedNodeBefore(newObject, fixed);
         } else {
             // some entries are not default constants - do the materialization
+            virtual.materializeAt(fixed);
             MaterializeObjectNode materialize = new MaterializeObjectNode(virtual, obj.getLockCount());
             ValueNode[] values = new ValueNode[obj.getEntries().length];
             materialize.setProbability(fixed.probability());