aboutsummaryrefslogtreecommitdiffstats
path: root/insns.def
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-09-08 08:21:07 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-09-08 08:21:07 +0000
commiteec17b718ae04b9bcff215114a156dcb25eb1458 (patch)
tree4133d3187ea216692013cfb2e59b396939ce8f07 /insns.def
parentd3022c424cffc1e92b751e72fb450408e853e388 (diff)
downloadruby-eec17b718ae04b9bcff215114a156dcb25eb1458.tar.gz
* vm_core.h: remove rb_call_info_t::blockiseq.
* insns.def (send, invokesuper): pass blockiseq explicitly. * compile.c: catch up this fix. * iseq.c: ditto. * vm_args.c: ditto. * iseq.c (ISEQ_MINOR_VERSION): 2->3 because instruction spec was changed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'insns.def')
-rw-r--r--insns.def8
1 files changed, 4 insertions, 4 deletions
diff --git a/insns.def b/insns.def
index abcd9a2fda..d27fd1a5b9 100644
--- a/insns.def
+++ b/insns.def
@@ -936,12 +936,12 @@ defineclass
*/
DEFINE_INSN
send
-(CALL_INFO ci)
+(CALL_INFO ci, ISEQ iseq)
(...)
(VALUE val) // inc += - (int)(ci->orig_argc + ((ci->flag & VM_CALL_ARGS_BLOCKARG) ? 1 : 0));
{
ci->argc = ci->orig_argc;
- vm_caller_setup_arg_block(th, reg_cfp, ci, FALSE);
+ vm_caller_setup_arg_block(th, reg_cfp, ci, iseq, FALSE);
vm_search_method(ci, ci->recv = TOPN(ci->argc));
CALL_METHOD(ci);
}
@@ -983,12 +983,12 @@ opt_send_without_block
*/
DEFINE_INSN
invokesuper
-(CALL_INFO ci)
+(CALL_INFO ci, ISEQ iseq)
(...)
(VALUE val) // inc += - (int)(ci->orig_argc + ((ci->flag & VM_CALL_ARGS_BLOCKARG) ? 1 : 0));
{
ci->argc = ci->orig_argc;
- vm_caller_setup_arg_block(th, reg_cfp, ci, TRUE);
+ vm_caller_setup_arg_block(th, reg_cfp, ci, iseq, TRUE);
ci->recv = GET_SELF();
vm_search_super_method(th, GET_CFP(), ci);
CALL_METHOD(ci);