src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/phases/MidTier.java
changeset 58299 6df94ce3ab2f
parent 55509 d58442b8abc1
child 58679 9c3209ff7550
child 58877 aec7bf35d6f5
equal deleted inserted replaced
58298:0152ad7b38b8 58299:6df94ce3ab2f
     1 /*
     1 /*
     2  * Copyright (c) 2013, 2018, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    53 import org.graalvm.compiler.phases.common.InsertGuardFencesPhase;
    53 import org.graalvm.compiler.phases.common.InsertGuardFencesPhase;
    54 import org.graalvm.compiler.phases.common.IterativeConditionalEliminationPhase;
    54 import org.graalvm.compiler.phases.common.IterativeConditionalEliminationPhase;
    55 import org.graalvm.compiler.phases.common.LockEliminationPhase;
    55 import org.graalvm.compiler.phases.common.LockEliminationPhase;
    56 import org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase;
    56 import org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase;
    57 import org.graalvm.compiler.phases.common.LoweringPhase;
    57 import org.graalvm.compiler.phases.common.LoweringPhase;
       
    58 import org.graalvm.compiler.phases.common.OptimizeDivPhase;
    58 import org.graalvm.compiler.phases.common.VerifyHeapAtReturnPhase;
    59 import org.graalvm.compiler.phases.common.VerifyHeapAtReturnPhase;
    59 import org.graalvm.compiler.phases.common.WriteBarrierAdditionPhase;
    60 import org.graalvm.compiler.phases.common.WriteBarrierAdditionPhase;
    60 import org.graalvm.compiler.phases.tiers.MidTierContext;
    61 import org.graalvm.compiler.phases.tiers.MidTierContext;
    61 
    62 
    62 public class MidTier extends PhaseSuite<MidTierContext> {
    63 public class MidTier extends PhaseSuite<MidTierContext> {
    91             appendPhase(new VerifyHeapAtReturnPhase());
    92             appendPhase(new VerifyHeapAtReturnPhase());
    92         }
    93         }
    93 
    94 
    94         appendPhase(new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.MID_TIER));
    95         appendPhase(new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.MID_TIER));
    95 
    96 
       
    97         appendPhase(new OptimizeDivPhase());
       
    98 
    96         appendPhase(new FrameStateAssignmentPhase());
    99         appendPhase(new FrameStateAssignmentPhase());
    97 
   100 
    98         LoopPolicies loopPolicies = createLoopPolicies();
   101         LoopPolicies loopPolicies = createLoopPolicies();
    99         if (OptLoopTransform.getValue(options)) {
   102         if (OptLoopTransform.getValue(options)) {
   100             if (PartialUnroll.getValue(options)) {
   103             if (PartialUnroll.getValue(options)) {