# HG changeset patch # User Lukas Stadler # Date 1398241579 -7200 # Node ID 0225dc47596eb40512aade134eb902531cc692a0 # Parent be2434ceaffaad7c7255af7c9479f0958b7577fa simplify usage of IncrementalCanonicalizerPhase, use incremental canonicalizer for GuardLowering diff -r be2434ceaffa -r 0225dc47596e graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/MidTier.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/MidTier.java Wed Apr 23 10:26:19 2014 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/MidTier.java Wed Apr 23 10:26:19 2014 +0200 @@ -51,9 +51,7 @@ } if (OptFloatingReads.getValue()) { - IncrementalCanonicalizerPhase incCanonicalizer = new IncrementalCanonicalizerPhase<>(canonicalizer); - incCanonicalizer.appendPhase(new FloatingReadPhase()); - appendPhase(incCanonicalizer); + appendPhase(new IncrementalCanonicalizerPhase<>(canonicalizer, new FloatingReadPhase())); if (OptReadElimination.getValue()) { appendPhase(new ReadEliminationPhase()); } @@ -84,7 +82,7 @@ appendPhase(new LoopSafepointInsertionPhase()); - appendPhase(new GuardLoweringPhase()); + appendPhase(new IncrementalCanonicalizerPhase<>(canonicalizer, new GuardLoweringPhase())); appendPhase(new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.MID_TIER)); diff -r be2434ceaffa -r 0225dc47596e graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IncrementalCanonicalizerPhase.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IncrementalCanonicalizerPhase.java Wed Apr 23 10:26:19 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IncrementalCanonicalizerPhase.java Wed Apr 23 10:26:19 2014 +0200 @@ -40,6 +40,11 @@ this.canonicalizer = canonicalizer; } + public IncrementalCanonicalizerPhase(CanonicalizerPhase canonicalizer, BasePhase phase) { + this.canonicalizer = canonicalizer; + appendPhase(phase); + } + @Override protected void run(StructuredGraph graph, C context) { Mark newNodesMark = graph.getMark();