# HG changeset patch # User Roland Schatz # Date 1421940937 -3600 # Node ID a4292401de0f5689644878ec5261c964cc6735b8 # Parent 926488f5d34553df4c587466cf82112ceaf357c5 Ignore dontinline compile command if it would prevent application of forced substitutions. diff -r 926488f5d345 -r a4292401de0f graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/inlining/walker/InliningData.java --- 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";