# HG changeset patch # User Josef Eisl # Date 1411649462 -7200 # Node ID d21962ea9617a30857d7eefc3178fe3a48ae2af3 # Parent e8b80721524d7aa0c7365683a735fc7d2a74059c Remove ValueConsumer.visitValue(Value). diff -r e8b80721524d -r d21962ea9617 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java Thu Sep 25 14:48:19 2014 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/LinearScan.java Thu Sep 25 14:51:02 2014 +0200 @@ -615,7 +615,7 @@ ValueConsumer setVariableConsumer = new ValueConsumer() { @Override - public void visitValue(Value value) { + public void visitValue(Value value, OperandMode mode, EnumSet flags) { if (isVariable(value)) { getOrCreateInterval(asVariable(value)); } @@ -681,7 +681,7 @@ ValueConsumer useConsumer = new ValueConsumer() { @Override - public void visitValue(Value operand) { + public void visitValue(Value operand, OperandMode mode, EnumSet flags) { if (isVariable(operand)) { int operandNum = operandNumber(operand); if (!liveKill.get(operandNum)) { @@ -701,7 +701,7 @@ ValueConsumer stateConsumer = new ValueConsumer() { @Override - public void visitValue(Value operand) { + public void visitValue(Value operand, OperandMode mode, EnumSet flags) { int operandNum = operandNumber(operand); if (!liveKill.get(operandNum)) { liveGen.set(operandNum); @@ -712,7 +712,7 @@ ValueConsumer defConsumer = new ValueConsumer() { @Override - public void visitValue(Value operand) { + public void visitValue(Value operand, OperandMode mode, EnumSet flags) { if (isVariable(operand)) { int varNum = operandNumber(operand); liveKill.set(varNum); @@ -2214,7 +2214,7 @@ Interval curInterval; @Override - public void visitValue(Value operand) { + public void visitValue(Value operand, OperandMode mode, EnumSet flags) { if (isRegister(operand)) { if (intervalFor(operand) == curInterval) { ok = true; diff -r e8b80721524d -r d21962ea9617 graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotBackend.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotBackend.java Thu Sep 25 14:48:19 2014 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotBackend.java Thu Sep 25 14:51:02 2014 +0200 @@ -36,6 +36,8 @@ import com.oracle.graal.hotspot.replacements.*; 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.LabelOp; import com.oracle.graal.lir.StandardOp.SaveRegistersOp; import com.oracle.graal.nodes.*; @@ -154,7 +156,7 @@ ValueConsumer defConsumer = new ValueConsumer() { @Override - public void visitValue(Value value) { + public void visitValue(Value value, OperandMode mode, EnumSet flags) { if (ValueUtil.isRegister(value)) { final Register reg = ValueUtil.asRegister(value); definedRegisters.add(reg); diff -r e8b80721524d -r d21962ea9617 graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValueConsumer.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValueConsumer.java Thu Sep 25 14:48:19 2014 +0200 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValueConsumer.java Thu Sep 25 14:51:02 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 ValueProcedure}. @@ -34,26 +34,13 @@ public abstract class ValueConsumer extends InstructionValueConsumer { /** - * Iterator method to be overwritten. This version of the iterator does not take additional - * parameters to keep the signature short. - * - * @param value The value that is iterated. - */ - public void visitValue(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 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(Value value, OperandMode mode, EnumSet flags) { - visitValue(value); - } + public abstract void visitValue(Value value, OperandMode mode, EnumSet flags); @Override public void visitValue(LIRInstruction instruction, Value value, OperandMode mode, EnumSet flags) { diff -r e8b80721524d -r d21962ea9617 graal/com.oracle.graal.lir/src/com/oracle/graal/lir/constopt/ConstantLoadOptimization.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/constopt/ConstantLoadOptimization.java Thu Sep 25 14:48:19 2014 +0200 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/constopt/ConstantLoadOptimization.java Thu Sep 25 14:51:02 2014 +0200 @@ -127,7 +127,7 @@ ValueConsumer stateConsumer = new ValueConsumer() { @Override - public void visitValue(Value operand) { + public void visitValue(Value operand, OperandMode mode, EnumSet flags) { assert !operand.equals(var) : "constant usage through variable in frame state " + var; } };