diff graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java @ 10762:c483912aaf70

add ValueProxy interface and infrastructure
author Lukas Stadler <lukas.stadler@jku.at>
date Mon, 15 Jul 2013 16:39:11 +0200
parents ae815a4c112a
children ae3d070ab223
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java	Mon Jul 15 13:36:59 2013 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java	Mon Jul 15 16:39:11 2013 +0200
@@ -35,7 +35,7 @@
  * loop.
  */
 @NodeInfo(nameTemplate = "{p#type/s}Proxy")
-public class ProxyNode extends FloatingNode implements Node.IterableNodeType, ValueNumberable, Canonicalizable, Virtualizable, LIRLowerable {
+public class ProxyNode extends FloatingNode implements Node.IterableNodeType, ValueNumberable, Canonicalizable, Virtualizable, LIRLowerable, ValueProxy {
 
     @Input(notDataflow = true) private AbstractBeginNode proxyPoint;
     @Input private ValueNode value;
@@ -116,4 +116,8 @@
         return graph.unique(new ProxyNode(value, exit, PhiType.Memory, location));
     }
 
+    @Override
+    public ValueNode getOriginalValue() {
+        return value;
+    }
 }