diff options
Diffstat (limited to 'runtime/jit/jit_code_cache.cc')
-rw-r--r-- | runtime/jit/jit_code_cache.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/runtime/jit/jit_code_cache.cc b/runtime/jit/jit_code_cache.cc index 845f6eb8fb..30703e3eb5 100644 --- a/runtime/jit/jit_code_cache.cc +++ b/runtime/jit/jit_code_cache.cc @@ -1316,6 +1316,21 @@ ProfilingInfo* JitCodeCache::GetProfilingInfo(ArtMethod* method, Thread* self) { return it->second; } +void JitCodeCache::MaybeUpdateInlineCache(ArtMethod* method, + uint32_t dex_pc, + ObjPtr<mirror::Class> cls, + Thread* self) { + ScopedDebugDisallowReadBarriers sddrb(self); + MutexLock mu(self, *Locks::jit_lock_); + auto it = profiling_infos_.find(method); + if (it == profiling_infos_.end()) { + return; + } + ProfilingInfo* info = it->second; + ScopedAssertNoThreadSuspension sants("ProfilingInfo"); + info->AddInvokeInfo(dex_pc, cls.Ptr()); +} + void JitCodeCache::ResetHotnessCounter(ArtMethod* method, Thread* self) { ScopedDebugDisallowReadBarriers sddrb(self); MutexLock mu(self, *Locks::jit_lock_); |