summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro Matsumoto <[email protected]>2012-08-02 07:56:23 +0900
committerYukihiro Matsumoto <[email protected]>2012-08-02 07:56:23 +0900
commit90323f545f4e1c317062821653f032ec151ba63e (patch)
tree0c45079a793792b6ca1f32430b991598b3d8b924 /src
parent29d4eb6e200bf1d886d2737776fff9d615b67a73 (diff)
downloadmruby-90323f545f4e1c317062821653f032ec151ba63e.tar.gz
mruby-90323f545f4e1c317062821653f032ec151ba63e.zip
keep minimal stack space (recv and blk)
Diffstat (limited to 'src')
-rw-r--r--src/vm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vm.c b/src/vm.c
index 875a6d94f..f3c408809 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -132,7 +132,7 @@ cipush(mrb_state *mrb)
mrb->ciend = mrb->cibase + size * 2;
}
mrb->ci++;
- mrb->ci->nregs = 0;
+ mrb->ci->nregs = 2;
mrb->ci->eidx = eidx;
mrb->ci->ridx = ridx;
mrb->ci->env = 0;
@@ -1549,7 +1549,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self)
ci->mid = 0;
ci->stackidx = mrb->stack - mrb->stbase;
ci->argc = 0;
- ci->target_class = mrb_class_ptr(regs[GETARG_A(i)]);
+ ci->target_class = mrb_class_ptr(recv);
/* prepare stack */
mrb->stack += a;