changeset 21223:31c4d3f91d30

SSAVerifier: ignore StackSlotValues.
author Josef Eisl <josef.eisl@jku.at>
date Tue, 21 Apr 2015 18:12:01 +0200
parents f226f63af996
children 993a5446ea6f
files graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ssa/SSAVerifier.java
diffstat 1 files changed, 2 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ssa/SSAVerifier.java	Mon Apr 20 18:05:27 2015 +0200
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ssa/SSAVerifier.java	Tue Apr 21 18:12:01 2015 +0200
@@ -89,12 +89,7 @@
         visited.set(block.getId());
         for (LIRInstruction op : lir.getLIRforBlock(block)) {
             op.visitEachAlive(this::useConsumer);
-            /*
-             * TODO(je) we are currently skipping LIRFrameStates because there are problems with
-             * eliminated StackLockValue. (The slot is not defined but we can't tell that the lock
-             * is eliminated.)
-             */
-            // op.visitEachState(this::useConsumer);
+            op.visitEachState(this::useConsumer);
             op.visitEachInput(this::useConsumer);
 
             op.visitEachTemp(this::defConsumer);
@@ -131,7 +126,7 @@
     }
 
     private static boolean shouldProcess(Value value) {
-        return !value.equals(Value.ILLEGAL) && !isConstant(value) && !isRegister(value);
+        return !value.equals(Value.ILLEGAL) && !isConstant(value) && !isRegister(value) && !isStackSlotValue(value);
     }
 
 }