diff graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/node/NodeData.java @ 10695:8c8e47cc101d

Truffle-DSL: fixed a bug in removal of the frame from the generated generic execute method.
author Christian Humer <christian.humer@gmail.com>
date Thu, 11 Jul 2013 01:55:54 +0200
parents b8fe1fe004ec
children a9cb98ff8fd9
line wrap: on
line diff
--- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/node/NodeData.java	Wed Jul 10 09:42:22 2013 +0200
+++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/node/NodeData.java	Thu Jul 11 01:55:54 2013 +0200
@@ -78,6 +78,18 @@
         this.assumptions = splitSource.assumptions;
     }
 
+    public boolean needsFrame() {
+        for (SpecializationData specialization : specializations) {
+            if (!specialization.isReachable()) {
+                continue;
+            }
+            if (specialization.findParameter("frameValue") != null) {
+                return true;
+            }
+        }
+        return false;
+    }
+
     public int getPolymorphicDepth() {
         return polymorphicDepth;
     }