Mercurial > hg > graal-compiler
diff graal/GraalCompiler/src/com/sun/c1x/ir/Merge.java @ 2821:015be60afcf3
removed flags from Value class
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Mon, 30 May 2011 17:05:06 +0200 |
parents | c3f64b66fc78 |
children | d54ea877a302 bd17ac598c6e |
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/ir/Merge.java Mon May 30 16:24:22 2011 +0200 +++ b/graal/GraalCompiler/src/com/sun/c1x/ir/Merge.java Mon May 30 17:05:06 2011 +0200 @@ -150,7 +150,7 @@ while (!hasPhisOnStack && i < state.stackSize()) { Value value = state.stackAt(i); hasPhisOnStack = isPhiAtBlock(value); - if (value != null && !value.isIllegal()) { + if (value != null && !(value instanceof Phi && ((Phi) value).isDead())) { i += value.kind.sizeInSlots(); } else { i++; @@ -161,7 +161,7 @@ Value value = state.localAt(i); hasPhisInLocals = isPhiAtBlock(value); // also ignore illegal HiWords - if (value != null && !value.isIllegal()) { + if (value != null && !(value instanceof Phi && ((Phi) value).isDead())) { i += value.kind.sizeInSlots(); } else { i++; @@ -180,7 +180,11 @@ if (value != null) { out.println(stateString(j, value)); // also ignore illegal HiWords - j += value.isIllegal() ? 1 : value.kind.sizeInSlots(); + if (value instanceof Phi && ((Phi) value).isDead()) { + j += 1; + } else { + j += value.kind.sizeInSlots(); + } } else { j++; }