Mercurial > hg > truffle
changeset 7536:1563a48b798d
don't tail duplicate allocations
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Wed, 23 Jan 2013 17:21:07 +0100 |
parents | f057113c7a87 |
children | 263a666388b1 |
files | graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java |
diffstat | 1 files changed, 4 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java Wed Jan 23 16:46:20 2013 +0100 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/TailDuplicationPhase.java Wed Jan 23 17:21:07 2013 +0100 @@ -31,6 +31,7 @@ import com.oracle.graal.nodes.VirtualState.NodeClosure; import com.oracle.graal.nodes.extended.*; import com.oracle.graal.nodes.java.*; +import com.oracle.graal.nodes.spi.*; import com.oracle.graal.nodes.type.*; import com.oracle.graal.nodes.util.*; import com.oracle.graal.phases.*; @@ -94,6 +95,9 @@ int opportunities = 0; while (current instanceof FixedWithNextNode) { current = ((FixedWithNextNode) current).next(); + if (current instanceof VirtualizableAllocation) { + return false; + } for (PhiNode phi : improvements) { for (Node input : current.inputs()) { if (input == phi) {