aboutsummaryrefslogtreecommitdiffstats
path: root/vm_insnhelper.c
diff options
context:
space:
mode:
authorKoichi Sasada <ko1@atdot.net>2019-11-09 16:15:17 +0900
committerKoichi Sasada <ko1@atdot.net>2019-11-09 16:18:58 +0900
commit43ceedecc0b9990b5bac2e65de5e439c41a9996b (patch)
tree6d19d377de30039e5a2431278e187748b6a92ca7 /vm_insnhelper.c
parent50bc7e7e9f0da6b27db06ac063257de0b97ed9b3 (diff)
downloadruby-43ceedecc0b9990b5bac2e65de5e439c41a9996b.tar.gz
use STACK_ADDR_FROM_TOP()
vm_invoke_builtin() accesses VM stack via cfp->sp. However, MJIT can use their own stack. To access them appropriately, we need to use STACK_ADDR_FROM_TOP().
Diffstat (limited to 'vm_insnhelper.c')
-rw-r--r--vm_insnhelper.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c
index 8378fc37b9..898b1937a0 100644
--- a/vm_insnhelper.c
+++ b/vm_insnhelper.c
@@ -4981,9 +4981,8 @@ invoke_bf(rb_execution_context_t *ec, rb_control_frame_t *cfp, const struct rb_b
}
static VALUE
-vm_invoke_builtin(rb_execution_context_t *ec, rb_control_frame_t *cfp, const struct rb_builtin_function* bf)
+vm_invoke_builtin(rb_execution_context_t *ec, rb_control_frame_t *cfp, const struct rb_builtin_function* bf, const VALUE *argv)
{
- const VALUE *argv = cfp->sp - bf->argc;
return invoke_bf(ec, cfp, bf, argv);
}