/** * getLocalVar is saved for location and should not be simplified so we still know its original * depth/offset. */ @Override public void simplifyOperands(Map<Operand, Operand> valueMap, boolean force) { setOperand1(getValue().getSimplifiedOperand(valueMap, force)); }
/** * getLocalVar is saved for location and should not be simplified so we still know its original * depth/offset. */ @Override public void simplifyOperands(Map<Operand, Operand> valueMap, boolean force) { setOperand1(getValue().getSimplifiedOperand(valueMap, force)); }
@Override public Instr clone(CloneInfo ii) { // SSS FIXME: Do we need to rename lvar really? It is just a name-proxy! return new StoreLocalVarInstr(scope, getValue().cloneForInlining(ii), (LocalVariable) getLocalVar().cloneForInlining(ii)); }
@Override public Instr clone(CloneInfo ii) { // SSS FIXME: Do we need to rename lvar really? It is just a name-proxy! return new StoreLocalVarInstr(scope, getValue().cloneForInlining(ii), (LocalVariable) getLocalVar().cloneForInlining(ii)); }
@Override public void encode(IRWriterEncoder e) { super.encode(e); e.encode(getScope()); e.encode(getValue()); e.encode(getLocalVar()); }
@Override public Object interpret(ThreadContext context, StaticScope currScope, DynamicScope currDynScope, IRubyObject self, Object[] temp) { Object varValue = getValue().retrieve(context, self, currScope, currDynScope, temp); currDynScope.setValue((IRubyObject)varValue, getLocalVar().getLocation(), getLocalVar().getScopeDepth()); return null; }
@Override public void encode(IRWriterEncoder e) { super.encode(e); e.encode(getScope()); e.encode(getValue()); e.encode(getLocalVar()); }
@Override public Object interpret(ThreadContext context, StaticScope currScope, DynamicScope currDynScope, IRubyObject self, Object[] temp) { Object varValue = getValue().retrieve(context, self, currScope, currDynScope, temp); currDynScope.setValue((IRubyObject)varValue, getLocalVar().getLocation(), getLocalVar().getScopeDepth()); return null; }
Operand storeValue = storelocalvarinstr.getValue(); switch (depth) { case 0:
int depth = storelocalvarinstr.getLocalVar().getScopeDepth(); int location = storelocalvarinstr.getLocalVar().getLocation(); Operand storeValue = storelocalvarinstr.getValue(); switch (depth) { case 0:
int depth = storelocalvarinstr.getLocalVar().getScopeDepth(); int location = storelocalvarinstr.getLocalVar().getLocation(); Operand storeValue = storelocalvarinstr.getValue(); switch (depth) { case 0:
Operand storeValue = storelocalvarinstr.getValue(); switch (depth) { case 0: