summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--imemo.c41
-rw-r--r--internal/imemo.h1
2 files changed, 0 insertions, 42 deletions
diff --git a/imemo.c b/imemo.c
index f8c0e3b171..1c5a36fb24 100644
--- a/imemo.c
+++ b/imemo.c
@@ -278,47 +278,6 @@ rb_imemo_memsize(VALUE obj)
* mark
* ========================================================================= */
-static enum rb_id_table_iterator_result
-cc_table_mark_i(VALUE ccs_ptr, void *data)
-{
- // looks duplicate to mark_cc_entry_i (gc.c)
- struct rb_class_cc_entries *ccs = (struct rb_class_cc_entries *)ccs_ptr;
- VM_ASSERT(vm_ccs_p(ccs));
-#if VM_CHECK_MODE > 0
- VALUE klass = (VALUE)data;
-
- VALUE lookup_val;
- VM_ASSERT(rb_id_table_lookup(RCLASS_WRITABLE_CC_TBL(klass), ccs->cme->called_id, &lookup_val));
- VM_ASSERT(lookup_val == ccs_ptr);
-#endif
-
- if (METHOD_ENTRY_INVALIDATED(ccs->cme)) {
- rb_vm_ccs_free(ccs);
- return ID_TABLE_DELETE;
- }
- else {
- rb_gc_mark_movable((VALUE)ccs->cme);
-
- for (int i=0; i<ccs->len; i++) {
- VM_ASSERT(klass == ccs->entries[i].cc->klass);
- VM_ASSERT(vm_cc_check_cme(ccs->entries[i].cc, ccs->cme));
-
- rb_gc_mark_movable((VALUE)ccs->entries[i].cc);
- }
- return ID_TABLE_CONTINUE;
- }
-}
-
-void
-rb_cc_table_mark(VALUE klass)
-{
- // TODO: delete this (and cc_table_mark_i) if it's ok
- struct rb_id_table *cc_tbl = RCLASS_WRITABLE_CC_TBL(klass);
- if (cc_tbl) {
- rb_id_table_foreach_values(cc_tbl, cc_table_mark_i, (void *)klass);
- }
-}
-
static bool
moved_or_living_object_strictly_p(VALUE obj)
{
diff --git a/internal/imemo.h b/internal/imemo.h
index 44b41d1b1c..a1be53aec2 100644
--- a/internal/imemo.h
+++ b/internal/imemo.h
@@ -149,7 +149,6 @@ static inline void MEMO_V1_SET(struct MEMO *m, VALUE v);
static inline void MEMO_V2_SET(struct MEMO *m, VALUE v);
size_t rb_imemo_memsize(VALUE obj);
-void rb_cc_table_mark(VALUE klass);
void rb_imemo_mark_and_move(VALUE obj, bool reference_updating);
void rb_cc_table_free(VALUE klass);
void rb_cc_tbl_free(struct rb_id_table *cc_tbl, VALUE klass);