public void oneFixnumArgNoBlockCallInstr(OneFixnumArgNoBlockCallInstr oneFixnumArgNoBlockCallInstr) { IRBytecodeAdapter m = jvmMethod(); long fixnum = oneFixnumArgNoBlockCallInstr.getFixnumArg(); Operand receiver = oneFixnumArgNoBlockCallInstr.getReceiver(); Variable result = oneFixnumArgNoBlockCallInstr.getResult(); m.loadContext(); // for visibility checking without requiring frame self // TODO: don't bother passing when fcall or vcall, and adjust callsite appropriately m.loadSelf(); // caller visit(receiver); m.invokeOtherOneFixnum(file, lastLine, oneFixnumArgNoBlockCallInstr, fixnum); if (result != null) { jvmStoreLocal(result); } else { // still need to drop, since all dyncalls return something (FIXME) m.adapter.pop(); } }
public void oneFixnumArgNoBlockCallInstr(OneFixnumArgNoBlockCallInstr oneFixnumArgNoBlockCallInstr) { IRBytecodeAdapter m = jvmMethod(); long fixnum = oneFixnumArgNoBlockCallInstr.getFixnumArg(); Operand receiver = oneFixnumArgNoBlockCallInstr.getReceiver(); Variable result = oneFixnumArgNoBlockCallInstr.getResult(); m.loadContext(); // for visibility checking without requiring frame self // TODO: don't bother passing when fcall or vcall, and adjust callsite appropriately m.loadSelf(); // caller visit(receiver); m.invokeOtherOneFixnum(file, lastLine, oneFixnumArgNoBlockCallInstr, fixnum); if (result != null) { jvmStoreLocal(result); } else { // still need to drop, since all dyncalls return something (FIXME) m.adapter.pop(); } }
OneFixnumArgNoBlockCallInstr call = (OneFixnumArgNoBlockCallInstr)instr; IRubyObject r = (IRubyObject)retrieveOp(call.getReceiver(), context, self, currDynScope, temp); result = call.getCallSite().call(context, self, r, call.getFixnumArg()); setResult(temp, currDynScope, call.getResult(), result); break;
OneFixnumArgNoBlockCallInstr call = (OneFixnumArgNoBlockCallInstr)instr; IRubyObject r = (IRubyObject)retrieveOp(call.getReceiver(), context, self, currDynScope, temp); result = call.getCallSite().call(context, self, r, call.getFixnumArg()); setResult(temp, currDynScope, call.getResult(), result); break;
OneFixnumArgNoBlockCallInstr call = (OneFixnumArgNoBlockCallInstr)instr; IRubyObject r = (IRubyObject)retrieveOp(call.getReceiver(), context, self, currDynScope, currScope, temp); result = call.getCallSite().call(context, self, r, call.getFixnumArg()); setResult(temp, currDynScope, call.getResult(), result); break;
OneFixnumArgNoBlockCallInstr call = (OneFixnumArgNoBlockCallInstr)instr; IRubyObject r = (IRubyObject)retrieveOp(call.getReceiver(), context, self, currDynScope, currScope, temp); result = call.getCallSite().call(context, self, r, call.getFixnumArg()); setResult(temp, currDynScope, call.getResult(), result); break;