summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--insns.def5
-rw-r--r--vm_insnhelper.c2
3 files changed, 10 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index c11027985e..bcf7bbc5cb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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
diff --git a/insns.def b/insns.def
index 22b4e4fa5c..f019435750 100644
--- a/insns.def
+++ b/insns.def
@@ -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;