# HG changeset patch # User Thomas Wuerthinger # Date 1421199949 -3600 # Node ID be2351580c7d773ea147314870880033b620776d # Parent 869ee319c377c3639547d77a495a9adbcb1f8f75 Do not use an iterator when computing the single value of a PhiNode. diff -r 869ee319c377 -r be2351580c7d graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java Tue Jan 13 17:10:33 2015 +0100 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PhiNode.java Wed Jan 14 02:45:49 2015 +0100 @@ -157,10 +157,10 @@ * {@code null} inputs. */ public ValueNode singleValue() { - Iterator iterator = values().iterator(); - ValueNode singleValue = iterator.next(); - while (iterator.hasNext()) { - ValueNode value = iterator.next(); + ValueNode singleValue = valueAt(0); + int count = valueCount(); + for (int i = 1; i < count; ++i) { + ValueNode value = valueAt(i); if (value != this) { if (value != singleValue) { return MULTIPLE_VALUES;