diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-09-08 02:57:39 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-09-08 02:57:39 +0000 |
commit | a31c632299b72cd9e4ff53cec6d7b56f1f8a54f7 (patch) | |
tree | 41e34ef0a04b01d6d0d26ca0a71e91aed4c7bd6a /iseq.c | |
parent | 922bc54adb2b1cbcc14edc93a37f626c7a784a02 (diff) |
* iseq.c (iseq_mark): no need to mark inline cache entries.
* insns.def (onceinlinecache, setinlinecache): save a value
to mark cached value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'iseq.c')
-rw-r--r-- | iseq.c | 11 |
1 files changed, 0 insertions, 11 deletions
@@ -90,7 +90,6 @@ iseq_mark(void *ptr) RUBY_MARK_ENTER("iseq"); if (ptr) { - int i; rb_iseq_t *iseq = ptr; RUBY_GC_INFO("%s @ %s\n", RSTRING_PTR(iseq->name), RSTRING_PTR(iseq->filename)); @@ -104,16 +103,6 @@ iseq_mark(void *ptr) /* RUBY_MARK_UNLESS_NULL(iseq->cached_special_block); */ RUBY_MARK_UNLESS_NULL(iseq->orig); - for (i=0; i<iseq->ic_size; i++) { - struct iseq_inline_cache_entry *const ic = &iseq->ic_entries[i]; - RUBY_MARK_UNLESS_NULL(ic->ic_class); - RUBY_MARK_UNLESS_NULL(ic->ic_value); - if (ic->ic_vmstat != GET_VM_STATE_VERSION()) continue; - if (ic->ic_method) { - rb_gc_mark_method_entry(ic->ic_method); - } - } - if (iseq->compile_data != 0) { struct iseq_compile_data *const compile_data = iseq->compile_data; RUBY_MARK_UNLESS_NULL(compile_data->mark_ary); |