diff options
Diffstat (limited to 'runtime/mirror/class.h')
-rw-r--r-- | runtime/mirror/class.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/runtime/mirror/class.h b/runtime/mirror/class.h index 82425b559d..a77972efc5 100644 --- a/runtime/mirror/class.h +++ b/runtime/mirror/class.h @@ -1020,6 +1020,13 @@ class MANAGED Class FINAL : public Object { bool GetSlowPathEnabled() SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); void SetSlowPath(bool enabled) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + ObjectArray<String>* GetDexCacheStrings() SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + void SetDexCacheStrings(ObjectArray<String>* new_dex_cache_strings) + SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + static MemberOffset DexCacheStringsOffset() { + return OFFSET_OF_OBJECT_MEMBER(Class, dex_cache_strings_); + } + // Used to initialize a class in the allocation code path to ensure it is guarded by a StoreStore // fence. class InitializeClassVisitor { @@ -1065,6 +1072,9 @@ class MANAGED Class FINAL : public Object { // runtime such as arrays and primitive classes). HeapReference<DexCache> dex_cache_; + // Short cuts to dex_cache_ member for fast compiled code access. + HeapReference<ObjectArray<String>> dex_cache_strings_; + // static, private, and <init> methods HeapReference<ObjectArray<ArtMethod>> direct_methods_; |