From 4890bdd9e8b4d6dbf31fb19b780538012ac2e287 Mon Sep 17 00:00:00 2001 From: ko1 Date: Fri, 27 Oct 2017 06:06:31 +0000 Subject: `th` -> `ec` for block related functions. * vm.c: the following functions accept `ec` instead of `th`. * invoke_block * invoke_bmethod * invoke_iseq_block_from_c * invoke_block_from_c_bh * check_block_handler * vm_yield_with_cref * vm_yield * vm_yield_with_block * vm_yield_force_blockarg * invoke_block_from_c_proc * vm_invoke_proc * vm_invoke_bmethod * rb_vm_invoke_proc * vm_insnhelper.c: ditto. * vm_yield_with_cfunc * vm_yield_with_symbol * vm_callee_setup_block_arg * vm_yield_setup_args * vm_invoke_iseq_block * vm_invoke_symbol_block * vm_invoke_ifunc_block * vm_invoke_block git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_eval.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'vm_eval.c') diff --git a/vm_eval.c b/vm_eval.c index 75cfcab4fb..751c5bde3a 100644 --- a/vm_eval.c +++ b/vm_eval.c @@ -16,10 +16,10 @@ struct local_var_list { }; static inline VALUE method_missing(VALUE obj, ID id, int argc, const VALUE *argv, enum method_missing_reason call_status); -static inline VALUE vm_yield_with_cref(rb_thread_t *th, int argc, const VALUE *argv, const rb_cref_t *cref, int is_lambda); -static inline VALUE vm_yield(rb_thread_t *th, int argc, const VALUE *argv); -static inline VALUE vm_yield_with_block(rb_thread_t *th, int argc, const VALUE *argv, VALUE block_handler); -static inline VALUE vm_yield_force_blockarg(rb_thread_t *th, VALUE args); +static inline VALUE vm_yield_with_cref(rb_execution_context_t *ec, int argc, const VALUE *argv, const rb_cref_t *cref, int is_lambda); +static inline VALUE vm_yield(rb_execution_context_t *ec, int argc, const VALUE *argv); +static inline VALUE vm_yield_with_block(rb_execution_context_t *ec, int argc, const VALUE *argv, VALUE block_handler); +static inline VALUE vm_yield_force_blockarg(rb_execution_context_t *ec, VALUE args); static VALUE vm_exec(rb_thread_t *th); static void vm_set_eval_stack(rb_thread_t * th, const rb_iseq_t *iseq, const rb_cref_t *cref, const struct rb_block *base_block); static int vm_collect_local_variables_in_heap(const VALUE *dfp, const struct local_var_list *vars); @@ -183,7 +183,7 @@ vm_call0_body(rb_execution_context_t *ec, struct rb_calling_info *calling, const { rb_proc_t *proc; GetProcPtr(calling->recv, proc); - ret = rb_vm_invoke_proc(rb_ec_thread_ptr(ec), proc, calling->argc, argv, calling->block_handler); + ret = rb_vm_invoke_proc(ec, proc, calling->argc, argv, calling->block_handler); goto success; } default: @@ -966,7 +966,7 @@ rb_f_public_send(int argc, VALUE *argv, VALUE recv) static inline VALUE rb_yield_0(int argc, const VALUE * argv) { - return vm_yield(GET_THREAD(), argc, argv); + return vm_yield(GET_EC(), argc, argv); } VALUE @@ -1031,13 +1031,13 @@ rb_yield_splat(VALUE values) VALUE rb_yield_force_blockarg(VALUE values) { - return vm_yield_force_blockarg(GET_THREAD(), values); + return vm_yield_force_blockarg(GET_EC(), values); } VALUE rb_yield_block(VALUE val, VALUE arg, int argc, const VALUE *argv, VALUE blockarg) { - return vm_yield_with_block(GET_THREAD(), argc, argv, + return vm_yield_with_block(GET_EC(), argc, argv, NIL_P(blockarg) ? VM_BLOCK_HANDLER_NONE : blockarg); } @@ -1544,8 +1544,8 @@ rb_eval_cmd(VALUE cmd, VALUE arg, int level) static VALUE yield_under(VALUE under, VALUE self, int argc, const VALUE *argv) { - rb_thread_t *th = GET_THREAD(); - rb_control_frame_t *cfp = th->ec->cfp; + rb_execution_context_t *ec = GET_EC(); + rb_control_frame_t *cfp = ec->cfp; VALUE block_handler = VM_CF_BLOCK_HANDLER(cfp); VALUE new_block_handler = 0; const struct rb_captured_block *captured = NULL; @@ -1579,18 +1579,18 @@ yield_under(VALUE under, VALUE self, int argc, const VALUE *argv) new_captured.self = self; ep = captured->ep; - VM_FORCE_WRITE_SPECIAL_CONST(&VM_CF_LEP(th->ec->cfp)[VM_ENV_DATA_INDEX_SPECVAL], new_block_handler); + VM_FORCE_WRITE_SPECIAL_CONST(&VM_CF_LEP(ec->cfp)[VM_ENV_DATA_INDEX_SPECVAL], new_block_handler); } - cref = vm_cref_push(th->ec, under, ep, TRUE); - return vm_yield_with_cref(th, argc, argv, cref, is_lambda); + cref = vm_cref_push(ec, under, ep, TRUE); + return vm_yield_with_cref(ec, argc, argv, cref, is_lambda); } VALUE rb_yield_refine_block(VALUE refinement, VALUE refinements) { - rb_thread_t *th = GET_THREAD(); - VALUE block_handler = VM_CF_BLOCK_HANDLER(th->ec->cfp); + rb_execution_context_t *ec = GET_EC(); + VALUE block_handler = VM_CF_BLOCK_HANDLER(ec->cfp); if (vm_block_handler_type(block_handler) != block_handler_type_iseq) { rb_bug("rb_yield_refine_block: an iseq block is required"); @@ -1600,11 +1600,11 @@ rb_yield_refine_block(VALUE refinement, VALUE refinements) struct rb_captured_block new_captured = *captured; VALUE new_block_handler = VM_BH_FROM_ISEQ_BLOCK(&new_captured); const VALUE *ep = captured->ep; - rb_cref_t *cref = vm_cref_push(th->ec, refinement, ep, TRUE); + rb_cref_t *cref = vm_cref_push(ec, refinement, ep, TRUE); CREF_REFINEMENTS_SET(cref, refinements); - VM_FORCE_WRITE_SPECIAL_CONST(&VM_CF_LEP(th->ec->cfp)[VM_ENV_DATA_INDEX_SPECVAL], new_block_handler); + VM_FORCE_WRITE_SPECIAL_CONST(&VM_CF_LEP(ec->cfp)[VM_ENV_DATA_INDEX_SPECVAL], new_block_handler); new_captured.self = refinement; - return vm_yield_with_cref(th, 0, NULL, cref, FALSE); + return vm_yield_with_cref(ec, 0, NULL, cref, FALSE); } } -- cgit v1.2.3