Mercurial > hg > graal-compiler
changeset 15290:0225dc47596e
simplify usage of IncrementalCanonicalizerPhase, use incremental canonicalizer for GuardLowering
author | Lukas Stadler <lukas.stadler@oracle.com> |
---|---|
date | Wed, 23 Apr 2014 10:26:19 +0200 |
parents | be2434ceaffa |
children | 471e28b8f03b |
files | graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/MidTier.java graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/IncrementalCanonicalizerPhase.java |
diffstat | 2 files changed, 7 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- 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<MidTierContext> 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));
--- 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<? super C> phase) { + this.canonicalizer = canonicalizer; + appendPhase(phase); + } + @Override protected void run(StructuredGraph graph, C context) { Mark newNodesMark = graph.getMark();