Mercurial > hg > graal-compiler
changeset 6544:cfe31bb417a7
Avoid assertion failures for BoxedVirtualObjectNode
author | Christian Wimmer <christian.wimmer@oracle.com> |
---|---|
date | Wed, 10 Oct 2012 20:21:56 -0700 |
parents | ec196bfc458b |
children | 05227ad6eba7 |
files | graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.java |
diffstat | 1 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.java Tue Oct 09 16:16:39 2012 -0700 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/DebugInfoBuilder.java Wed Oct 10 20:21:56 2012 -0700 @@ -141,14 +141,14 @@ if (value instanceof VirtualObjectNode) { VirtualObjectNode obj = (VirtualObjectNode) value; EscapeObjectState state = objectStates.get(obj); - if (state == null && obj.entryCount() > 0) { + if (state == null && obj.entryCount() > 0 && !(obj instanceof BoxedVirtualObjectNode)) { // null states occur for objects with 0 fields throw new GraalInternalError("no mapping found for virtual object %s", obj); } if (state instanceof MaterializedObjectState) { return toValue(((MaterializedObjectState) state).materializedValue()); } else { - assert obj.entryCount() == 0 || state instanceof VirtualObjectState; + assert obj.entryCount() == 0 || state instanceof VirtualObjectState || obj instanceof BoxedVirtualObjectNode; VirtualObject ciObj = virtualObjects.get(value); if (ciObj == null) { ciObj = VirtualObject.get(obj.type(), null, virtualObjects.size());