Mercurial > hg > graal-compiler
changeset 2992:c6b89544fef5
Fix scheduling around loopcounters
author | Gilles Duboscq <gilles.duboscq@oracle.com> |
---|---|
date | Thu, 16 Jun 2011 12:07:51 +0200 |
parents | a8e8035916a3 |
children | 3671e31615c9 |
files | graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/graph/IR.java graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/schedule/IdentifyBlocksPhase.java |
diffstat | 2 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/graph/IR.java Wed Jun 15 21:20:44 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/graph/IR.java Thu Jun 16 12:07:51 2011 +0200 @@ -94,7 +94,7 @@ if (GraalOptions.OptCanonicalizer) { new CanonicalizerPhase().apply(graph); new DeadCodeEliminationPhase().apply(compilation.graph); - printGraph("After Canonicalization", graph); + //printGraph("After Canonicalization", graph); } new LoopPhase().apply(graph);
--- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/schedule/IdentifyBlocksPhase.java Wed Jun 15 21:20:44 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/schedule/IdentifyBlocksPhase.java Thu Jun 16 12:07:51 2011 +0200 @@ -311,7 +311,7 @@ } } else if (usage instanceof LoopCounter) { LoopCounter counter = (LoopCounter) usage; - if (n == counter.init()) { + if (n == counter.init() || n == counter.stride()) { LoopBegin loopBegin = counter.loopBegin(); Block mergeBlock = nodeToBlock.get(loopBegin); block = getCommonDominator(block, mergeBlock.dominator());