changeset 15573:5696af217fe2

Truffle: getCallNode() should return null for call target frames
author Andreas Woess <andreas.woess@jku.at>
date Fri, 09 May 2014 15:53:30 +0200
parents 01bce59c2749
children d79501a10e5b
files graal/com.oracle.graal.truffle.hotspot/src/com/oracle/graal/truffle/hotspot/HotSpotFrameInstance.java
diffstat 1 files changed, 15 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.truffle.hotspot/src/com/oracle/graal/truffle/hotspot/HotSpotFrameInstance.java	Fri May 09 15:52:56 2014 +0200
+++ b/graal/com.oracle.graal.truffle.hotspot/src/com/oracle/graal/truffle/hotspot/HotSpotFrameInstance.java	Fri May 09 15:53:30 2014 +0200
@@ -88,13 +88,7 @@
 
     public abstract CallTarget getTargetCallTarget();
 
-    public Node getCallNode() {
-        Object receiver = stackFrame.getLocal(getNotifyIndex());
-        if (receiver instanceof DirectCallNode || receiver instanceof IndirectCallNode) {
-            return (Node) receiver;
-        }
-        return null;
-    }
+    public abstract Node getCallNode();
 
     /**
      * This class represents a frame that is taken from the
@@ -142,6 +136,15 @@
         public CallTarget getTargetCallTarget() {
             return (CallTarget) stackFrame.getLocal(getCallTargetIndex());
         }
+
+        @Override
+        public Node getCallNode() {
+            Object receiver = stackFrame.getLocal(getNotifyIndex());
+            if (receiver instanceof DirectCallNode || receiver instanceof IndirectCallNode) {
+                return (Node) receiver;
+            }
+            return null;
+        }
     }
 
     /**
@@ -199,5 +202,10 @@
         public CallTarget getTargetCallTarget() {
             return null;
         }
+
+        @Override
+        public Node getCallNode() {
+            return null;
+        }
     }
 }