Mercurial > hg > graal-compiler
changeset 7327:3f78e0041007
Remove PhiLabelOp.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 10 Jan 2013 15:00:15 +0100 |
parents | 31f218c152f3 |
children | edb4951bc8b5 |
files | graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRVerifier.java graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java |
diffstat | 2 files changed, 0 insertions(+), 33 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRVerifier.java Wed Jan 09 23:55:05 2013 +0100 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRVerifier.java Thu Jan 10 15:00:15 2013 +0100 @@ -113,22 +113,6 @@ } assert lir.lir(block).get(0) instanceof StandardOp.LabelOp : "block must start with label"; - if (block.numberOfPreds() > 1) { - assert lir.lir(block).get(0) instanceof StandardOp.PhiLabelOp : "phi mapping required for multiple predecessors"; - Value[] phiDefinitions = ((StandardOp.PhiLabelOp) lir.lir(block).get(0)).getPhiDefinitions(); - if (!beforeRegisterAllocation) { - assert phiDefinitions.length == 0; - } - for (Block pred : block.getPredecessors()) { - assert pred.numberOfSux() == 1; - LIRInstruction last = lir.lir(pred).get(lir.lir(pred).size() - 1); - assert last instanceof StandardOp.PhiJumpOp : "phi mapping required for multiple successors"; - Value[] phiUses = ((StandardOp.PhiJumpOp) last).getPhiInputs(); - if (!beforeRegisterAllocation) { - assert phiUses.length == 0; - } - } - } if (block.numberOfSux() > 0) { LIRInstruction last = lir.lir(block).get(lir.lir(block).size() - 1);
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java Wed Jan 09 23:55:05 2013 +0100 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java Thu Jan 10 15:00:15 2013 +0100 @@ -70,23 +70,6 @@ } } - public static class PhiLabelOp extends LabelOp { - @Def({REG, STACK}) protected Value[] phiDefinitions; - - public PhiLabelOp(Label label, boolean align, Value[] phiDefinitions) { - super(label, align); - this.phiDefinitions = phiDefinitions; - } - - public void markResolved() { - phiDefinitions = EMPTY; - } - - public Value[] getPhiDefinitions() { - return phiDefinitions; - } - } - /** * LIR operation that is an unconditional jump to {@link #destination()}. * When the LIR is constructed, the last operation of every block must implement this interface. After