# HG changeset patch # User Tom Rodriguez # Date 1426549097 25200 # Node ID df0608c348992354cd19a20da32b91d01b1d2fe8 # Parent c278c8c727aa2a6e6d4f6d2a0bdfd6023bc28805 Don't walk out of loop when estimating unswitch benefits diff -r c278c8c727aa -r df0608c34899 graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopEx.java --- a/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopEx.java Mon Mar 16 15:51:43 2015 -0700 +++ b/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopEx.java Mon Mar 16 16:38:17 2015 -0700 @@ -266,9 +266,12 @@ if (loop().getExits().contains(b)) { exits.add((LoopExitNode) b.getBeginNode()); } else { - assert loop().getBlocks().contains(b); blocks.add(b.getBeginNode()); - work.addAll(b.getDominated()); + for (Block d : b.getDominated()) { + if (loop.getBlocks().contains(d)) { + work.add(d); + } + } } } return LoopFragment.computeNodes(branch.graph(), blocks, exits);