changeset 18932:a4292401de0f

Ignore dontinline compile command if it would prevent application of forced substitutions.
author Roland Schatz <roland.schatz@oracle.com>
date Thu, 22 Jan 2015 16:35:37 +0100
parents 926488f5d345
children 76553fa0f02b
files graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/InliningData.java
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/InliningData.java	Thu Jan 22 15:59:51 2015 +0100
+++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/InliningData.java	Thu Jan 22 16:35:37 2015 +0100
@@ -118,7 +118,7 @@
             return "it is an abstract method";
         } else if (!method.getDeclaringClass().isInitialized()) {
             return "the method's class is not initialized";
-        } else if (!method.canBeInlined()) {
+        } else if (!method.canBeInlined() && !context.getReplacements().isForcedSubstitution(method)) {
             return "it is marked non-inlinable";
         } else if (countRecursiveInlining(method) > MaximumRecursiveInlining.getValue()) {
             return "it exceeds the maximum recursive inlining depth";