# HG changeset patch # User Andreas Woess # Date 1397469562 -7200 # Node ID 4abf68d7b0b833ba740754f8c7994a4cd736eb95 # Parent 5ffcd28b934081ac8b8830d8f07bf134373777c6 PartialEvaluator: quick fix for inlining regression diff -r 5ffcd28b9340 -r 4abf68d7b0b8 graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java --- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java Mon Apr 14 11:12:39 2014 +0200 +++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java Mon Apr 14 11:59:22 2014 +0200 @@ -277,9 +277,6 @@ } ResolvedJavaMethod method = methodCallTargetNode.targetMethod(); - if (!method.getName().equals("call") || method.getSignature().getParameterCount(false) != 1) { - return null; - } /* * Accessing the constant using the SnippetReflectionProvider is a workaround, we should @@ -289,6 +286,10 @@ SnippetReflectionProvider snippetReflection = Graal.getRequiredCapability(SnippetReflectionProvider.class); Object receiverValue = snippetReflection.asObject(receiverNode.asConstant()); if (receiverValue instanceof OptimizedCallNode) { + if (!method.getName().equals("call") || method.getSignature().getParameterCount(false) != 2) { // FIXME + return null; + } + OptimizedCallNode callNode = (OptimizedCallNode) receiverValue; TruffleCallPath callPath = methodCallToCallPath.get(methodCallTargetNode); if (callPath == null) {