changeset 17283:e8b80721524d

Remove InstructionValueConsumer.visitValue(LIRInstruction, Value).
author Josef Eisl <josef.eisl@jku.at>
date Thu, 25 Sep 2014 14:48:19 +0200
parents 0578dc1c1a62
children d21962ea9617
files graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotBackend.java graal/com.oracle.graal.lir.test/src/com/oracle/graal/lir/test/CompositeValueReplacementTest1.java graal/com.oracle.graal.lir.test/src/com/oracle/graal/lir/test/CompositeValueReplacementTest2.java graal/com.oracle.graal.lir/src/com/oracle/graal/lir/InstructionValueConsumer.java graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValueConsumer.java graal/com.oracle.graal.lir/src/com/oracle/graal/lir/constopt/ConstantLoadOptimization.java
diffstat 7 files changed, 20 insertions(+), 35 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java	Thu Sep 25 14:48:19 2014 +0200
@@ -1204,7 +1204,7 @@
             InstructionValueConsumer stateProc = new InstructionValueConsumer() {
 
                 @Override
-                public void visitValue(LIRInstruction op, Value operand) {
+                public void visitValue(LIRInstruction op, Value operand, OperandMode mode, EnumSet<OperandFlag> flags) {
                     final int opId = op.id();
                     final int blockFrom = getFirstLirInstructionId((blockForId(opId)));
                     addUse((AllocatableValue) operand, blockFrom, opId + 1, RegisterPriority.None, operand.getLIRKind());
--- a/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotBackend.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotBackend.java	Thu Sep 25 14:48:19 2014 +0200
@@ -25,8 +25,8 @@
 import static com.oracle.graal.api.code.CallingConvention.Type.*;
 import static com.oracle.graal.api.code.ValueUtil.*;
 import static com.oracle.graal.compiler.common.GraalOptions.*;
+import static com.oracle.graal.compiler.common.UnsafeAccess.*;
 import static com.oracle.graal.sparc.SPARC.*;
-import static com.oracle.graal.compiler.common.UnsafeAccess.*;
 
 import java.util.*;
 
@@ -49,6 +49,8 @@
 import com.oracle.graal.hotspot.meta.*;
 import com.oracle.graal.hotspot.stubs.*;
 import com.oracle.graal.lir.*;
+import com.oracle.graal.lir.LIRInstruction.OperandFlag;
+import com.oracle.graal.lir.LIRInstruction.OperandMode;
 import com.oracle.graal.lir.StandardOp.SaveRegistersOp;
 import com.oracle.graal.lir.asm.*;
 import com.oracle.graal.lir.gen.*;
@@ -347,7 +349,7 @@
 
         private final InstructionValueConsumer valueConsumer = new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 Object valueObject = value;
                 if (isRegister(value)) { // Canonicalize registers
                     valueObject = asRegister(value);
--- a/graal/com.oracle.graal.lir.test/src/com/oracle/graal/lir/test/CompositeValueReplacementTest1.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.lir.test/src/com/oracle/graal/lir/test/CompositeValueReplacementTest1.java	Thu Sep 25 14:48:19 2014 +0200
@@ -147,14 +147,14 @@
 
         op1.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue2, value);
             }
         });
 
         op2.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue3, value);
             }
         });
@@ -187,14 +187,14 @@
 
         op1.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue2, value);
             }
         });
 
         op2.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue3, value);
             }
         });
--- a/graal/com.oracle.graal.lir.test/src/com/oracle/graal/lir/test/CompositeValueReplacementTest2.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.lir.test/src/com/oracle/graal/lir/test/CompositeValueReplacementTest2.java	Thu Sep 25 14:48:19 2014 +0200
@@ -148,14 +148,14 @@
 
         op1.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue2, value);
             }
         });
 
         op2.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue3, value);
             }
         });
@@ -188,14 +188,14 @@
 
         op1.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue2, value);
             }
         });
 
         op2.visitEachInput(new InstructionValueConsumer() {
             @Override
-            public void visitValue(LIRInstruction instruction, Value value) {
+            public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                 assertEquals(dummyValue3, value);
             }
         });
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/InstructionValueConsumer.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/InstructionValueConsumer.java	Thu Sep 25 14:48:19 2014 +0200
@@ -25,8 +25,8 @@
 import java.util.*;
 
 import com.oracle.graal.api.meta.*;
-import com.oracle.graal.compiler.common.*;
-import com.oracle.graal.lir.LIRInstruction.*;
+import com.oracle.graal.lir.LIRInstruction.OperandFlag;
+import com.oracle.graal.lir.LIRInstruction.OperandMode;
 
 /**
  * Non-modifying version of {@link InstructionValueProcedure}.
@@ -34,28 +34,14 @@
 public abstract class InstructionValueConsumer extends InstructionValueProcedureBase {
 
     /**
-     * Iterator method to be overwritten. This version of the iterator does not take additional
-     * parameters to keep the signature short.
-     *
-     * @param instruction The current instruction.
-     * @param value The value that is iterated.
-     */
-    public void visitValue(LIRInstruction instruction, Value value) {
-        throw GraalInternalError.shouldNotReachHere("One of the visitValue() methods must be overwritten");
-    }
-
-    /**
-     * Iterator method to be overwritten. This version of the iterator gets additional parameters
-     * about the processed value.
+     * Iterator method to be overwritten.
      *
      * @param instruction The current instruction.
      * @param value The value that is iterated.
      * @param mode The operand mode for the value.
      * @param flags A set of flags for the value.
      */
-    public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
-        visitValue(instruction, value);
-    }
+    public abstract void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags);
 
     @Override
     public final Value processValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValueConsumer.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValueConsumer.java	Thu Sep 25 14:48:19 2014 +0200
@@ -56,11 +56,6 @@
     }
 
     @Override
-    public final void visitValue(LIRInstruction instruction, Value value) {
-        throw GraalInternalError.shouldNotReachHere("This visitValue() method should never be called");
-    }
-
-    @Override
     public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
         visitValue(value, mode, flags);
     }
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/constopt/ConstantLoadOptimization.java	Thu Sep 25 14:35:24 2014 +0200
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/constopt/ConstantLoadOptimization.java	Thu Sep 25 14:48:19 2014 +0200
@@ -32,6 +32,8 @@
 import com.oracle.graal.debug.*;
 import com.oracle.graal.debug.Debug.Scope;
 import com.oracle.graal.lir.*;
+import com.oracle.graal.lir.LIRInstruction.OperandFlag;
+import com.oracle.graal.lir.LIRInstruction.OperandMode;
 import com.oracle.graal.lir.StandardOp.MoveOp;
 import com.oracle.graal.lir.constopt.ConstantTree.Flags;
 import com.oracle.graal.lir.constopt.ConstantTree.NodeCost;
@@ -163,7 +165,7 @@
 
             InstructionValueConsumer loadConsumer = new InstructionValueConsumer() {
                 @Override
-                public void visitValue(LIRInstruction instruction, Value value) {
+                public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet<OperandFlag> flags) {
                     if (isVariable(value)) {
                         Variable var = (Variable) value;