Mercurial > hg > graal-jvmci-8
changeset 4699:83e7065e9c75
adjust inlining policy's maximum trivial size
author | Christian Haeubl <christian.haeubl@oracle.com> |
---|---|
date | Fri, 24 Feb 2012 18:29:00 -0800 |
parents | 6872a9e3a4b9 |
children | 3ab34c33d690 |
files | graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/GraalOptions.java graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/phases/InliningPhase.java |
diffstat | 2 files changed, 6 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/GraalOptions.java Fri Feb 24 18:23:41 2012 -0800 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/GraalOptions.java Fri Feb 24 18:29:00 2012 -0800 @@ -47,7 +47,7 @@ public static boolean InlineMegamorphicCalls = ____; public static int InliningPolicy = 4; public static int WeightComputationPolicy = 2; - public static int MaximumTrivialSize = 6; + public static int MaximumTrivialSize = 10; public static int MaximumInlineLevel = 30; public static int MaximumDesiredSize = 6000; public static int MaximumRecursiveInlining = 1; @@ -59,11 +59,13 @@ public static float MaximumInlineWeight = 1.25f; public static float InliningSizePenalty = 1; // StaticSizeBasedInliningPolicy (1), MinimumCodeSizeBasedInlining (2), - // DynamicSizeBasedInliningPolicy (3), GreedySizeBasedInlining (4) + // DynamicSizeBasedInliningPolicy (3) public static int MaximumInlineSize = 35; + // GreedySizeBasedInlining (4) + public static int MaximumGreedyInlineSize = 200; + // Common options for inlining policies 1 to 4 public static float NestedInliningSizeRatio = 1f; public static float BoostInliningForEscapeAnalysis = 2f; - public static int MaximumGreedyInlineSize = 200; public static float ProbabilityCapForInlining = 1f; // escape analysis settings
--- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/phases/InliningPhase.java Fri Feb 24 18:23:41 2012 -0800 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/phases/InliningPhase.java Fri Feb 24 18:29:00 2012 -0800 @@ -307,7 +307,7 @@ double inlineRatio = Math.min(GraalOptions.ProbabilityCapForInlining, info.invoke.probability()); double maxSize = Math.pow(GraalOptions.NestedInliningSizeRatio, info.level) * GraalOptions.MaximumGreedyInlineSize * inlineRatio; - maxSize = Math.max(maxSize, GraalOptions.MaximumInlineSize); + maxSize = Math.max(maxSize, GraalOptions.MaximumTrivialSize); return info.weight <= maxSize; } }