summaryrefslogtreecommitdiff
path: root/runtime/jit/jit_code_cache.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/jit/jit_code_cache.h')
-rw-r--r--runtime/jit/jit_code_cache.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/runtime/jit/jit_code_cache.h b/runtime/jit/jit_code_cache.h
index 7c828aebdc..e8ab117cec 100644
--- a/runtime/jit/jit_code_cache.h
+++ b/runtime/jit/jit_code_cache.h
@@ -197,7 +197,8 @@ class JitCodeCache {
bool NotifyCompilationOf(ArtMethod* method,
Thread* self,
CompilationKind compilation_kind,
- bool prejit)
+ bool prejit,
+ JitMemoryRegion* region)
REQUIRES_SHARED(Locks::mutator_lock_)
REQUIRES(!Locks::jit_lock_);
@@ -227,6 +228,10 @@ class JitCodeCache {
// Return true if the code cache contains this pc in the private region (i.e. not from zygote).
bool PrivateRegionContainsPc(const void* pc) const;
+ // Returns true if either the method's entrypoint is JIT compiled code or it is the
+ // instrumentation entrypoint and we can jump to jit code for this method. For testing use only.
+ bool WillExecuteJitCode(ArtMethod* method) REQUIRES(!Locks::jit_lock_);
+
// Return true if the code cache contains this method.
bool ContainsMethod(ArtMethod* method) REQUIRES(!Locks::jit_lock_);
@@ -309,10 +314,12 @@ class JitCodeCache {
REQUIRES(!Locks::jit_lock_)
REQUIRES_SHARED(Locks::mutator_lock_);
- // Create a 'ProfileInfo' for 'method'.
+ // Create a 'ProfileInfo' for 'method'. If 'retry_allocation' is true,
+ // will collect and retry if the first allocation is unsuccessful.
ProfilingInfo* AddProfilingInfo(Thread* self,
ArtMethod* method,
- const std::vector<uint32_t>& entries)
+ const std::vector<uint32_t>& entries,
+ bool retry_allocation)
REQUIRES(!Locks::jit_lock_)
REQUIRES_SHARED(Locks::mutator_lock_);