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