# HG changeset patch # User Josef Eisl # Date 1403774371 -7200 # Node ID ad197a92e25e16708784e65e3cfd276c06f8c1fc # Parent 96a088675c48fa1477b34001fb6cfbd7be3bf6b5 Fix ValuePosition.set() issues. diff -r 96a088675c48 -r ad197a92e25e graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java Wed Jun 25 20:39:27 2014 +0200 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/LIRIntrospection.java Thu Jun 26 11:19:31 2014 +0200 @@ -185,8 +185,9 @@ protected static void setValueForPosition(Object obj, long[] offsets, int directCount, ValuePosition pos, Value value) { if (pos.getIndex() < directCount) { setValue(obj, offsets[pos.getIndex()], value); + } else { + getValueArray(obj, offsets[pos.getIndex()])[pos.getSubIndex()] = value; } - getValueArray(obj, offsets[pos.getIndex()])[pos.getSubIndex()] = value; } protected static Value getValue(Object obj, long offset) { diff -r 96a088675c48 -r ad197a92e25e graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValuePosition.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValuePosition.java Wed Jun 25 20:39:27 2014 +0200 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/ValuePosition.java Thu Jun 26 11:19:31 2014 +0200 @@ -82,8 +82,9 @@ if (isCompositePosition()) { CompositeValue compValue = getCompositeValue(inst, this); compValue.getValueClass().setValue(compValue, this, value); + } else { + inst.getLIRInstructionClass().setValue(inst, this, value); } - inst.getLIRInstructionClass().setValue(inst, this, value); } public int getSubIndex() {