diff options
Diffstat (limited to 'runtime/class_table.h')
| -rw-r--r-- | runtime/class_table.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/runtime/class_table.h b/runtime/class_table.h index 002bb564ab..c911365698 100644 --- a/runtime/class_table.h +++ b/runtime/class_table.h @@ -104,17 +104,27 @@ class ClassTable { REQUIRES(Locks::classlinker_classes_lock_) SHARED_REQUIRES(Locks::mutator_lock_); + // Combines all of the tables into one class set. + size_t WriteToMemory(uint8_t* ptr) const + REQUIRES(Locks::classlinker_classes_lock_) + SHARED_REQUIRES(Locks::mutator_lock_); + size_t ReadFromMemory(uint8_t* ptr) + REQUIRES(Locks::classlinker_classes_lock_) + SHARED_REQUIRES(Locks::mutator_lock_); + private: class ClassDescriptorHashEquals { public: + // uint32_t for cross compilation. + uint32_t operator()(const GcRoot<mirror::Class>& root) const NO_THREAD_SAFETY_ANALYSIS; // Same class loader and descriptor. - std::size_t operator()(const GcRoot<mirror::Class>& root) const NO_THREAD_SAFETY_ANALYSIS; bool operator()(const GcRoot<mirror::Class>& a, const GcRoot<mirror::Class>& b) const NO_THREAD_SAFETY_ANALYSIS;; // Same descriptor. bool operator()(const GcRoot<mirror::Class>& a, const char* descriptor) const NO_THREAD_SAFETY_ANALYSIS; - std::size_t operator()(const char* descriptor) const NO_THREAD_SAFETY_ANALYSIS; + // uint32_t for cross compilation. + uint32_t operator()(const char* descriptor) const NO_THREAD_SAFETY_ANALYSIS; }; class GcRootEmptyFn { public: |