summaryrefslogtreecommitdiffstats
path: root/runtime/gc_root.h
diff options
context:
space:
mode:
authorMathieu Chartier <mathieuc@google.com>2014-08-29 18:16:58 -0700
committerMathieu Chartier <mathieuc@google.com>2014-09-02 14:39:49 -0700
commitcdfd39f579574a75b98e7ad48c69826b00361b27 (patch)
tree0f057472d19bf290766e20ea3ad63d0b28ee83a1 /runtime/gc_root.h
parent9a4f02722051955e536d6aacb776d637a6713545 (diff)
downloadart-cdfd39f579574a75b98e7ad48c69826b00361b27.tar.gz
art-cdfd39f579574a75b98e7ad48c69826b00361b27.tar.bz2
art-cdfd39f579574a75b98e7ad48c69826b00361b27.zip
Change intern table to unordered set.
Intern table active used bytes goes from 430k to 317k on system server. Similar %wise savings on other apps. Bug: 16238192 (cherry picked from commit d910fcef539e12ab181e56ec80684f39c4e95733) Change-Id: Ic70395124435c6f420a77e6d8639404a160f395a
Diffstat (limited to 'runtime/gc_root.h')
-rw-r--r--runtime/gc_root.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/runtime/gc_root.h b/runtime/gc_root.h
index b10a55c1a2..3928f5d3e2 100644
--- a/runtime/gc_root.h
+++ b/runtime/gc_root.h
@@ -28,6 +28,7 @@ class PACKED(4) GcRoot {
public:
template<ReadBarrierOption kReadBarrierOption = kWithReadBarrier>
ALWAYS_INLINE MirrorType* Read() SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
+ ALWAYS_INLINE void Assign(MirrorType* value) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
void VisitRoot(RootCallback* callback, void* arg, uint32_t thread_id, RootType root_type) {
callback(reinterpret_cast<mirror::Object**>(&root_), arg, thread_id, root_type);