# HG changeset patch # User Thomas Wuerthinger # Date 1424027938 -3600 # Node ID 9a13d6b25b343c054a794574a0e402ee26414a1f # Parent a1edf4524d842e74a50d80bb850d887e452ae2be Fix for new frame implementation. diff -r a1edf4524d84 -r 9a13d6b25b34 graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/FrameWithoutBoxing.java --- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/FrameWithoutBoxing.java Sun Feb 15 18:04:42 2015 +0100 +++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/FrameWithoutBoxing.java Sun Feb 15 20:18:58 2015 +0100 @@ -66,7 +66,7 @@ int index = slot.getIndex(); Object[] curLocals = this.getLocals(); if (CompilerDirectives.inInterpreter() && index >= curLocals.length) { - resizeAndCheck(slot); + curLocals = resizeAndCheck(slot); } return curLocals[index]; } @@ -80,7 +80,7 @@ int index = slot.getIndex(); Object[] curLocals = this.getLocals(); if (CompilerDirectives.inInterpreter() && index >= curLocals.length) { - resizeAndCheck(slot); + curLocals = resizeAndCheck(slot); } curLocals[index] = value; } @@ -174,10 +174,11 @@ return this.descriptor; } - private void resizeAndCheck(FrameSlot slot) { + private Object[] resizeAndCheck(FrameSlot slot) { if (!resize()) { throw new IllegalArgumentException(String.format("The frame slot '%s' is not known by the frame descriptor.", slot)); } + return locals; } @Override