summaryrefslogtreecommitdiff
path: root/iseq.c
diff options
context:
space:
mode:
Diffstat (limited to 'iseq.c')
-rw-r--r--iseq.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/iseq.c b/iseq.c
index d32a0929c6..e1c18e7a8a 100644
--- a/iseq.c
+++ b/iseq.c
@@ -359,17 +359,7 @@ rb_iseq_mark(const rb_iseq_t *iseq)
}
#if USE_MJIT
- const struct rb_callcache **cc_entries;
- if (body->jit_unit && (cc_entries = mjit_iseq_cc_entries(body)) != NULL) {
- for (unsigned int i=0; i<body->ci_size; i++) {
- const struct rb_callcache *cc = cc_entries[i];
- if (cc != NULL) {
- // Pin `cc` and `cc->cme` against GC.compact as their addresses may be written in JIT-ed code.
- rb_gc_mark((VALUE)cc);
- rb_gc_mark((VALUE)vm_cc_cme(cc));
- }
- }
- }
+ mjit_mark_cc_entries(body);
#endif
}