summaryrefslogtreecommitdiff
path: root/runtime/runtime.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/runtime.h')
-rw-r--r--runtime/runtime.h36
1 files changed, 35 insertions, 1 deletions
diff --git a/runtime/runtime.h b/runtime/runtime.h
index 8e99f800e0..6a6fdb79db 100644
--- a/runtime/runtime.h
+++ b/runtime/runtime.h
@@ -35,6 +35,7 @@
#include "method_reference.h"
#include "object_callbacks.h"
#include "offsets.h"
+#include "process_state.h"
#include "profiler_options.h"
#include "quick/quick_method_frame_info.h"
#include "runtime_stats.h"
@@ -385,7 +386,8 @@ class Runtime {
void SetImtConflictMethod(ArtMethod* method) SHARED_REQUIRES(Locks::mutator_lock_);
void SetImtUnimplementedMethod(ArtMethod* method) SHARED_REQUIRES(Locks::mutator_lock_);
- ArtMethod* CreateImtConflictMethod() SHARED_REQUIRES(Locks::mutator_lock_);
+ ArtMethod* CreateImtConflictMethod(LinearAlloc* linear_alloc)
+ SHARED_REQUIRES(Locks::mutator_lock_);
// Returns a special method that describes all callee saves being spilled to the stack.
enum CalleeSaveType {
@@ -583,6 +585,14 @@ class Runtime {
bool IsDebuggable() const;
+ bool IsNativeDebuggable() const {
+ return is_native_debuggable_;
+ }
+
+ void SetNativeDebuggable(bool value) {
+ is_native_debuggable_ = value;
+ }
+
// Returns the build fingerprint, if set. Otherwise an empty string is returned.
std::string GetFingerprint() {
return fingerprint_;
@@ -610,6 +620,21 @@ class Runtime {
return dump_native_stack_on_sig_quit_;
}
+ bool GetPrunedDalvikCache() const {
+ return pruned_dalvik_cache_;
+ }
+
+ void SetPrunedDalvikCache(bool pruned) {
+ pruned_dalvik_cache_ = pruned;
+ }
+
+ void UpdateProcessState(ProcessState process_state);
+
+ // Returns true if we currently care about long mutator pause.
+ bool InJankPerceptibleProcessState() const {
+ return process_state_ == kProcessStateJankPerceptible;
+ }
+
private:
static void InitPlatformSignalHandlers();
@@ -796,6 +821,9 @@ class Runtime {
// that there's no native bridge.
bool is_native_bridge_loaded_;
+ // Whether we are running under native debugger.
+ bool is_native_debuggable_;
+
// The maximum number of failed boots we allow before pruning the dalvik cache
// and trying again. This option is only inspected when we're running as a
// zygote.
@@ -822,6 +850,12 @@ class Runtime {
// Whether threads should dump their native stack on SIGQUIT.
bool dump_native_stack_on_sig_quit_;
+ // Whether the dalvik cache was pruned when initializing the runtime.
+ bool pruned_dalvik_cache_;
+
+ // Whether or not we currently care about pause times.
+ ProcessState process_state_;
+
DISALLOW_COPY_AND_ASSIGN(Runtime);
};
std::ostream& operator<<(std::ostream& os, const Runtime::CalleeSaveType& rhs);