changeset 14591:dbe41340d0a6

eliminate sequential reinterprets
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Thu, 13 Mar 2014 15:40:10 -0700
parents e754ac1331ef
children a23ca654a882
files graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ReinterpretNode.java
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ReinterpretNode.java	Thu Mar 13 15:38:00 2014 -0700
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/ReinterpretNode.java	Thu Mar 13 15:40:10 2014 -0700
@@ -93,6 +93,10 @@
         if (stamp().isCompatible(value.stamp())) {
             return value;
         }
+        if (value instanceof ReinterpretNode) {
+            ReinterpretNode reinterpret = (ReinterpretNode) value;
+            return value.graph().unique(new ReinterpretNode(stamp(), reinterpret.value()));
+        }
         return this;
     }