changeset 15047:d8b9e3761e52

disable unsafe location identity optimization for arrays since it breaks truffle
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Wed, 09 Apr 2014 22:45:27 -0700
parents 5c71dcf0915d
children d4a9d6f6e57d
files graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeAccessNode.java
diffstat 1 files changed, 9 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeAccessNode.java	Wed Apr 09 16:33:37 2014 -0700
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnsafeAccessNode.java	Wed Apr 09 22:45:27 2014 -0700
@@ -78,13 +78,15 @@
                 }
             }
         }
-        ResolvedJavaType receiverType = ObjectStamp.typeOrNull(object());
-        if (receiverType != null && receiverType.isArray()) {
-            LocationIdentity identity = NamedLocationIdentity.getArrayLocation(receiverType.getComponentType().getKind());
-            // Try to build a better location node
-            ValueNode location = offset();
-            return cloneAsArrayAccess(location, identity);
-        }
+        // Temporarily disable this as it appears to break truffle.
+        // ResolvedJavaType receiverType = ObjectStamp.typeOrNull(object());
+        // if (receiverType != null && receiverType.isArray()) {
+        // LocationIdentity identity =
+        // NamedLocationIdentity.getArrayLocation(receiverType.getComponentType().getKind());
+        // // Try to build a better location node
+        // ValueNode location = offset();
+        // return cloneAsArrayAccess(location, identity);
+        // }
 
         return this;
     }