Mercurial > hg > graal-compiler
changeset 6665:6b71c116b370
PEA bugfix: look up scalar aliases when initializing virtual object entries
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Mon, 05 Nov 2012 12:58:32 +0100 |
parents | 3e2a91093bdd |
children | 49cd16dfb10c e54aeb000ad7 |
files | graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java |
diffstat | 1 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Mon Nov 05 12:57:17 2012 +0100 +++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapeClosure.java Mon Nov 05 12:58:32 2012 +0100 @@ -93,7 +93,11 @@ } else { effects.addFloatingNode(virtualObject); } - state.addObject(virtualObject, new ObjectState(virtualObject, op.fieldState(), 0)); + ValueNode[] fieldState = op.fieldState(); + for (int i = 0; i < fieldState.length; i++) { + fieldState[i] = state.getScalarAlias(fieldState[i]); + } + state.addObject(virtualObject, new ObjectState(virtualObject, fieldState, 0)); state.addAndMarkAlias(virtualObject, (ValueNode) node, usages); effects.deleteFixedNode((FixedWithNextNode) node); virtualIds++;