diff graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaReadNode.java @ 21783:a858c5f56d8a

Introduce AddressNode to represent pointer arithmetic, remove LocationNode.
author Roland Schatz <roland.schatz@oracle.com>
date Mon, 08 Jun 2015 18:47:58 +0200
parents 48c1ebd24120
children db885c930362
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaReadNode.java	Mon Jun 08 15:57:52 2015 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/JavaReadNode.java	Mon Jun 08 18:47:58 2015 +0200
@@ -26,8 +26,8 @@
 import com.oracle.graal.graph.*;
 import com.oracle.graal.graph.spi.*;
 import com.oracle.graal.nodeinfo.*;
-import com.oracle.graal.nodes.*;
 import com.oracle.graal.nodes.memory.*;
+import com.oracle.graal.nodes.memory.address.*;
 import com.oracle.graal.nodes.spi.*;
 import com.oracle.jvmci.meta.*;
 
@@ -42,8 +42,8 @@
     protected final Kind readKind;
     protected final boolean compressible;
 
-    public JavaReadNode(Kind readKind, ValueNode object, LocationNode location, BarrierType barrierType, boolean compressible) {
-        super(TYPE, object, location, StampFactory.forKind(readKind), barrierType);
+    public JavaReadNode(Kind readKind, AddressNode address, LocationIdentity location, BarrierType barrierType, boolean compressible) {
+        super(TYPE, address, location, StampFactory.forKind(readKind), barrierType);
         this.readKind = readKind;
         this.compressible = compressible;
     }
@@ -66,6 +66,6 @@
 
     @Override
     public Node canonical(CanonicalizerTool tool) {
-        return ReadNode.canonicalizeRead(this, location(), object(), tool);
+        return ReadNode.canonicalizeRead(this, getAddress(), getLocationIdentity(), tool);
     }
 }