changeset 15245:c52e6ff7b8ca

check isLegal before checking isExactType in ObjectGetClassNode
author Lukas Stadler <lukas.stadler@oracle.com>
date Thu, 17 Apr 2014 11:32:34 +0200
parents a7d08ab4842f
children 0eff788983f9
files graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectGetClassNode.java
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectGetClassNode.java	Thu Apr 17 11:32:26 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/ObjectGetClassNode.java	Thu Apr 17 11:32:34 2014 +0200
@@ -71,7 +71,7 @@
             Stamp stamp = getObject().stamp();
             if (stamp instanceof ObjectStamp) {
                 ObjectStamp objectStamp = (ObjectStamp) stamp;
-                if (objectStamp.isExactType()) {
+                if (objectStamp.isLegal() && objectStamp.isExactType()) {
                     Constant clazz = objectStamp.type().getEncoding(Representation.JavaClass);
                     return ConstantNode.forConstant(clazz, tool.getMetaAccess(), graph());
                 }