diff options
-rw-r--r-- | insns.def | 2 | ||||
-rw-r--r-- | variable.c | 2 | ||||
-rw-r--r-- | vm_insnhelper.c | 3 |
3 files changed, 5 insertions, 2 deletions
@@ -935,6 +935,8 @@ leave } } + RUBY_VM_CHECK_INTS(ec); + if (vm_pop_frame(ec, GET_CFP(), GET_EP())) { #if OPT_CALL_THREADED_CODE rb_ec_thread_ptr(ec)->retval = val; diff --git a/variable.c b/variable.c index 9919e48480..d6e2f2a601 100644 --- a/variable.c +++ b/variable.c @@ -799,7 +799,7 @@ gen_ivtbl_get(VALUE obj, struct gen_ivtbl **ivtbl) return 0; } -MJIT_FUNC_EXPORTED struct st_table * +struct st_table * rb_ivar_generic_ivtbl(void) { return generic_iv_tbl; diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 19349657d7..94fc7c72bd 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -2318,7 +2318,8 @@ vm_call_iseq_setup_tailcall(rb_execution_context_t *ec, rb_control_frame_t *cfp, iseq->body->stack_max); cfp->sp = sp_orig; - + RUBY_VM_CHECK_INTS(ec); + return Qundef; } |