# HG changeset patch # User Lukas Stadler # Date 1353423468 -3600 # Node ID 867a02e8c6107a00f0555b160bc6a2c455ab6cd0 # Parent 9f9068a65a83fd82033513373cf01a7446a7b7e6 small fix to multi-allocation PEA diff -r 9f9068a65a83 -r 867a02e8c610 graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java --- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Tue Nov 20 15:57:32 2012 +0100 +++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Tue Nov 20 15:57:48 2012 +0100 @@ -102,8 +102,8 @@ } if (newAllocations != null) { + trace("{{%s}} ", node); for (ObjectDesc desc : newAllocations) { - trace("{{%s}} ", node); VirtualObjectNode virtualObject = desc.virtualObject; if (virtualObject.isAlive()) { reusedVirtualObjects.add(virtualObject); @@ -116,8 +116,8 @@ fieldState[i] = state.getScalarAlias(fieldState[i]); } state.addObject(virtualObject, new ObjectState(virtualObject, fieldState, desc.lockCount)); - state.addAndMarkAlias(virtualObject, (ValueNode) node, usages); } + state.addAndMarkAlias(newAllocations[0].virtualObject, (ValueNode) node, usages); effects.deleteFixedNode((FixedWithNextNode) node); metricAllocationRemoved.add(newAllocations.length); virtualIds += newAllocations.length;