diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | eval.c | 12 | ||||
-rw-r--r-- | vm_eval.c | 6 |
3 files changed, 13 insertions, 9 deletions
@@ -1,3 +1,7 @@ +Fri Oct 19 16:55:58 2012 Koichi Sasada <ko1@atdot.net> + + * eval.c, vm_eval.c: use TH_PUSH_TAG() instead of PUSH_TAG(). + Fri Oct 19 11:13:55 2012 Koichi Sasada <ko1@atdot.net> * benchmark/driver.rb: remove unexpected `output'. @@ -699,8 +699,8 @@ rb_rescue2(VALUE (* b_proc) (ANYARGS), VALUE data1, volatile VALUE e_info = th->errinfo; va_list args; - PUSH_TAG(); - if ((state = EXEC_TAG()) == 0) { + TH_PUSH_TAG(th); + if ((state = TH_EXEC_TAG()) == 0) { retry_entry: result = (*b_proc) (data1); } @@ -743,7 +743,7 @@ rb_rescue2(VALUE (* b_proc) (ANYARGS), VALUE data1, } } } - POP_TAG(); + TH_POP_TAG(); if (state) JUMP_TAG(state); @@ -770,15 +770,15 @@ rb_protect(VALUE (* proc) (VALUE), VALUE data, int * state) protect_tag.prev = th->protect_tag; - PUSH_TAG(); + TH_PUSH_TAG(th); th->protect_tag = &protect_tag; MEMCPY(&org_jmpbuf, &(th)->root_jmpbuf, rb_jmpbuf_t, 1); - if ((status = EXEC_TAG()) == 0) { + if ((status = TH_EXEC_TAG()) == 0) { SAVE_ROOT_JMPBUF(th, result = (*proc) (data)); } MEMCPY(&(th)->root_jmpbuf, &org_jmpbuf, rb_jmpbuf_t, 1); th->protect_tag = protect_tag.prev; - POP_TAG(); + TH_POP_TAG(); if (state) { *state = status; @@ -1652,11 +1652,11 @@ rb_catch_obj(VALUE tag, VALUE (*func)(), VALUE data) rb_thread_t *th = GET_THREAD(); rb_control_frame_t *saved_cfp = th->cfp; - PUSH_TAG(); + TH_PUSH_TAG(th); th->tag->tag = tag; - if ((state = EXEC_TAG()) == 0) { + if ((state = TH_EXEC_TAG()) == 0) { /* call with argc=1, argv = [tag], block = Qnil to insure compatibility */ val = (*func)(tag, data, 1, &tag, Qnil); } @@ -1666,7 +1666,7 @@ rb_catch_obj(VALUE tag, VALUE (*func)(), VALUE data) th->errinfo = Qnil; state = 0; } - POP_TAG(); + TH_POP_TAG(); if (state) JUMP_TAG(state); |