changeset 13688:1e28a62e6031

remove LoadFieldNodes without usages
author Lukas Stadler <lukas.stadler@jku.at>
date Wed, 15 Jan 2014 17:00:40 +0100
parents 099fb62caefb
children 04615309d018
files graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadFieldNode.java
diffstat 1 files changed, 3 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadFieldNode.java	Wed Jan 15 16:03:07 2014 +0100
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/LoadFieldNode.java	Wed Jan 15 17:00:40 2014 +0100
@@ -60,6 +60,9 @@
 
     @Override
     public Node canonical(CanonicalizerTool tool) {
+        if (usages().isEmpty() && (isStatic() || ObjectStamp.isObjectNonNull(object().stamp()))) {
+            return null;
+        }
         MetaAccessProvider metaAccess = tool.getMetaAccess();
         if (tool.canonicalizeReads() && metaAccess != null) {
             ConstantNode constant = asConstant(metaAccess);