diff graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/generator/NodeGenFactory.java @ 20963:ec1dca6d288a

Truffle-DSL: fixed single specializable node migth delegate to a synthetic executable type.
author Christian Humer <christian.humer@gmail.com>
date Wed, 15 Apr 2015 00:35:25 +0200
parents a77b760a0307
children 56a30cfcefaf
line wrap: on
line diff
--- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/generator/NodeGenFactory.java	Tue Apr 14 18:04:29 2015 -0700
+++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/generator/NodeGenFactory.java	Wed Apr 15 00:35:25 2015 +0200
@@ -1728,7 +1728,7 @@
     private CodeTree createCallDelegateExecute(final CodeTreeBuilder parent, CodeTree receiver, LocalContext currentLocals, ExecutableTypeData source, ExecutableTypeData delegate) {
         CodeTreeBuilder callBuilder = parent.create();
 
-        if (singleSpecializable) {
+        if (singleSpecializable && delegate.getMethod() != null) {
             callBuilder.startCall(receiver, delegate.getMethod().getSimpleName().toString());
         } else {
             callBuilder.startCall(receiver, delegate.getUniqueName());