YJIT: Remove duplicate cfp->iseq accessor

This commit is contained in:
Alan Wu 2023-10-05 16:40:27 -04:00
Родитель 41a6e4bdf9
Коммит 07a7c4bdaf
3 изменённых файлов: 1 добавлений и 9 удалений

7
yjit.c
Просмотреть файл

@ -798,13 +798,6 @@ rb_set_cfp_sp(struct rb_control_frame_struct *cfp, VALUE *sp)
cfp->sp = sp;
}
rb_iseq_t *
rb_cfp_get_iseq(struct rb_control_frame_struct *cfp)
{
// TODO(alan) could assert frame type here to make sure that it's a ruby frame with an iseq.
return (rb_iseq_t*)cfp->iseq;
}
VALUE
rb_get_cfp_self(struct rb_control_frame_struct *cfp)
{

Просмотреть файл

@ -307,7 +307,6 @@ fn main() {
.allowlist_function("rb_yjit_iseq_builtin_attrs")
.allowlist_function("rb_yjit_builtin_function")
.allowlist_function("rb_set_cfp_(pc|sp)")
.allowlist_function("rb_cfp_get_iseq")
.allowlist_function("rb_yjit_multi_ractor_p")
.allowlist_function("rb_c_method_tracing_currently_enabled")
.allowlist_function("rb_full_cfunc_return")

Просмотреть файл

@ -2518,7 +2518,7 @@ fn branch_stub_hit_body(branch_ptr: *const c_void, target_idx: u32, ec: EcPtr) -
let cfp = get_ec_cfp(ec);
let original_interp_sp = get_cfp_sp(cfp);
let running_iseq = rb_cfp_get_iseq(cfp);
let running_iseq = get_cfp_iseq(cfp);
let reconned_pc = rb_iseq_pc_at_idx(running_iseq, target_blockid.idx.into());
let reconned_sp = original_interp_sp.offset(target_ctx.sp_offset.into());
// Unlike in the interpreter, our `leave` doesn't write to the caller's