src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java	Fri Jul  7 09:29:51 2017
--- new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java	Fri Jul  7 09:29:50 2017

*** 24,36 **** --- 24,41 ---- import static org.graalvm.compiler.core.common.GraalOptions.ConditionalElimination; import static org.graalvm.compiler.core.common.GraalOptions.ImmutableCode; import static org.graalvm.compiler.core.common.GraalOptions.OptDeoptimizationGrouping; import static org.graalvm.compiler.core.common.GraalOptions.OptFloatingReads; + import static org.graalvm.compiler.core.common.GraalOptions.OptLoopTransform; + import static org.graalvm.compiler.core.common.GraalOptions.PartialUnroll; import static org.graalvm.compiler.core.common.GraalOptions.ReassociateInvariants; import static org.graalvm.compiler.core.common.GraalOptions.VerifyHeapAtReturn; + import org.graalvm.compiler.loop.DefaultLoopPolicies; + import org.graalvm.compiler.loop.LoopPolicies; + import org.graalvm.compiler.loop.phases.LoopPartialUnrollPhase; import org.graalvm.compiler.loop.phases.LoopSafepointEliminationPhase; import org.graalvm.compiler.loop.phases.ReassociateInvariantPhase; import org.graalvm.compiler.nodes.spi.LoweringTool; import org.graalvm.compiler.options.OptionValues; import org.graalvm.compiler.phases.PhaseSuite;
*** 77,92 **** --- 82,107 ---- appendPhase(new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.MID_TIER)); appendPhase(new FrameStateAssignmentPhase()); + LoopPolicies loopPolicies = createLoopPolicies(); + if (OptLoopTransform.getValue(options)) { + if (PartialUnroll.getValue(options)) { + appendPhase(new LoopPartialUnrollPhase(loopPolicies, canonicalizer)); + } + } if (ReassociateInvariants.getValue(options)) { appendPhase(new ReassociateInvariantPhase()); } if (OptDeoptimizationGrouping.getValue(options)) { appendPhase(new DeoptimizationGroupingPhase()); } appendPhase(canonicalizer); } + + public LoopPolicies createLoopPolicies() { + return new DefaultLoopPolicies(); + } }

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File