diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | insns.def | 5 | ||||
-rw-r--r-- | vm_insnhelper.c | 2 |
3 files changed, 10 insertions, 5 deletions
@@ -1,3 +1,11 @@ +Thu Oct 18 18:29:25 2012 Koichi Sasada <ko1@atdot.net> + + * insns.def (send): remove unused condition. + This condition will be true after r37258. + + * vm_insnhelper.c (vm_caller_setup_args): remove `UNLIKELY' on + checking blockiseq (it seems `LIKELY'). + Thu Oct 18 17:31:58 2012 Koichi Sasada <ko1@atdot.net> * insns.def (opt_send_simple): introduce new instruction used @@ -963,10 +963,7 @@ send { ci->argc = ci->orig_argc; ci->blockptr = 0; - - if (UNLIKELY(!(ci->flag & VM_CALL_ARGS_SKIP_SETUP))) { - vm_caller_setup_args(th, reg_cfp, ci); - } + vm_caller_setup_args(th, reg_cfp, ci); vm_search_method(ci, ci->recv = TOPN(ci->argc)); CALL_METHOD(ci); } diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 96c2324c5c..17753d383c 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -1058,7 +1058,7 @@ vm_caller_setup_args(const rb_thread_t *th, rb_control_frame_t *cfp, rb_call_inf RUBY_VM_GET_BLOCK_PTR_IN_CFP(cfp)->proc = proc; } } - else if (UNLIKELY(ci->blockiseq != 0)) { + else if (ci->blockiseq != 0) { /* likely */ ci->blockptr = RUBY_VM_GET_BLOCK_PTR_IN_CFP(cfp); ci->blockptr->iseq = ci->blockiseq; ci->blockptr->proc = 0; |