diff options
author | Alan Wu <XrXr@users.noreply.github.com> | 2021-03-17 19:07:20 -0400 |
---|---|---|
committer | Alan Wu <XrXr@users.noreply.github.com> | 2021-10-20 18:19:32 -0400 |
commit | ec1cbbb07d00828e6265074ca4977a8dae6b8b29 (patch) | |
tree | cbc4a1cb075eb4e237dd3039c42d1b9a159d82ce /vm_method.c | |
parent | 0cd9120f177b153126a093e4beabb5784cd0ab99 (diff) |
Get rid of dependency on rb_call_cache
Diffstat (limited to 'vm_method.c')
-rw-r--r-- | vm_method.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/vm_method.c b/vm_method.c index 5fd8f6a8bc..5260f2d05c 100644 --- a/vm_method.c +++ b/vm_method.c @@ -123,7 +123,6 @@ rb_vm_cc_invalidate(const struct rb_callcache *cc) VM_ASSERT(cc->klass != 0); // should be enable *(VALUE *)&cc->klass = 0; - rb_yjit_method_lookup_change((VALUE)cc); RB_DEBUG_COUNTER_INC(cc_ent_invalidate); } @@ -135,7 +134,8 @@ vm_cme_invalidate(rb_callable_method_entry_t *cme) VM_ASSERT(callable_method_entry_p(cme)); METHOD_ENTRY_INVALIDATED_SET(cme); RB_DEBUG_COUNTER_INC(cc_cme_invalidate); - rb_yjit_method_lookup_change((VALUE)cme); + + rb_yjit_cme_invalidate((VALUE)cme); } void @@ -238,6 +238,8 @@ clear_method_cache_by_id_in_class(VALUE klass, ID mid) invalidate_negative_cache(mid); } } + + rb_yjit_method_lookup_change(klass, mid); } static void @@ -305,6 +307,8 @@ void rb_clear_method_cache_all(void) { rb_objspace_each_objects(invalidate_all_cc, NULL); + + rb_yjit_invalidate_all_method_lookup_assumptions(); } void |