src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedRemNode.java
--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedRemNode.java Thu Jul 25 11:44:37 2019 -0700
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/SignedRemNode.java Thu Jul 25 17:35:58 2019 -0400
@@ -117,10 +117,7 @@
return false;
}
- int compareAgainstZero = 0;
- int usageCount = self.getUsageCount();
- for (int i = 0; i < usageCount; i++) {
- Node usage = self.getUsageAt(i);
+ for (Node usage : self.usages()) {
if (usage instanceof IntegerEqualsNode) {
IntegerEqualsNode equalsNode = (IntegerEqualsNode) usage;
ValueNode node = equalsNode.getY();
@@ -131,12 +128,13 @@
ConstantNode constantNode = (ConstantNode) node;
Constant constant = constantNode.asConstant();
if (constant instanceof PrimitiveConstant && ((PrimitiveConstant) constant).asLong() == 0) {
- compareAgainstZero++;
+ continue;
}
}
}
+ return false;
}
- return compareAgainstZero == usageCount;
+ return true;
}
@Override