Bug 1237445 - Rekey ArrayObjectTable, r=terrence
authorSteve Fink <sfink@mozilla.com>
Wed, 20 Jan 2016 09:27:02 -0800
changeset 281955 d8f94c8056847a041d918102131eab86f15cd4ed
parent 281954 c1153dc8ccd12858e6f0e2b3762e2331b9feee01
child 281956 21ec96388cfa121714f646e4fd197c96257c5393
push id29950
push usercbook@mozilla.com
push dateThu, 28 Jan 2016 11:14:03 +0000
treeherdermozilla-central@2b73b0a4d52b [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersterrence
bugs1237445
milestone47.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1237445 - Rekey ArrayObjectTable, r=terrence
js/src/vm/ObjectGroup.h
--- a/js/src/vm/ObjectGroup.h
+++ b/js/src/vm/ObjectGroup.h
@@ -542,20 +542,20 @@ class ObjectGroupCompartment
     using NewTable = js::GCHashSet<NewEntry, NewEntry, SystemAllocPolicy>;
     class NewTableRef;
 
     // Set of default 'new' or lazy groups in the compartment.
     NewTable* defaultNewTable;
     NewTable* lazyTable;
 
     struct ArrayObjectKey;
-    using ArrayObjectTable = js::GCHashMap<ArrayObjectKey,
-                                           ReadBarrieredObjectGroup,
-                                           ArrayObjectKey,
-                                           SystemAllocPolicy>;
+    using ArrayObjectTable = js::GCRekeyableHashMap<ArrayObjectKey,
+                                                    ReadBarrieredObjectGroup,
+                                                    ArrayObjectKey,
+                                                    SystemAllocPolicy>;
 
     struct PlainObjectKey;
     struct PlainObjectEntry;
     struct PlainObjectGCPolicy : public DefaultMapGCPolicy<PlainObjectKey, PlainObjectEntry> {
         static bool needsSweep(PlainObjectKey* key, PlainObjectEntry* entry);
     };
     using PlainObjectTable = js::GCHashMap<PlainObjectKey,
                                            PlainObjectEntry,