changeset 13873:c2000a61fb9a

In ConditionalEliminationPhase, check whether a ValueNode does record usages; caused crashes in FastR
author Christian Wirth <christian.wirth@oracle.com>
date Wed, 05 Feb 2014 11:28:10 +0100
parents d04be74665fb
children c35d86f53ace
files graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java
diffstat 1 files changed, 3 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java	Wed Feb 05 09:32:30 2014 +0100
+++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java	Wed Feb 05 11:28:10 2014 +0100
@@ -639,6 +639,9 @@
         }
 
         private GuardingNode searchAnchor(ValueNode value, ResolvedJavaType type) {
+            if (!value.recordsUsages()) {
+                return null;
+            }
             for (Node n : value.usages()) {
                 if (n instanceof InstanceOfNode) {
                     InstanceOfNode instanceOfNode = (InstanceOfNode) n;