зеркало из https://github.com/mozilla/gecko-dev.git
Backout changeset 4e6b39fbd81e (bug 951722) for ggc orange
This commit is contained in:
Родитель
c0ee3dcccb
Коммит
993e96fa9b
|
@ -292,9 +292,7 @@ StoreBuffer::mark(JSTracer *trc)
|
|||
bufferGeneric.mark(this, trc);
|
||||
|
||||
#if defined(DEBUG)
|
||||
/* Check that internal hash tables no longer have any pointers into the nursery. */
|
||||
for (CompartmentsIter c(runtime_, SkipAtoms); !c.done(); c.next()) {
|
||||
c->checkNewTypeObjectTableAfterMovingGC();
|
||||
if (c->debugScopes)
|
||||
c->debugScopes->checkHashTablesAfterMovingGC(runtime_);
|
||||
}
|
||||
|
|
|
@ -247,9 +247,6 @@ struct JSCompartment
|
|||
js::types::TypeObjectWithNewScriptSet newTypeObjects;
|
||||
js::types::TypeObjectWithNewScriptSet lazyTypeObjects;
|
||||
void sweepNewTypeObjectTable(js::types::TypeObjectWithNewScriptSet &table);
|
||||
#if defined(DEBUG) && defined(JSGC_GENERATIONAL)
|
||||
void checkNewTypeObjectTableAfterMovingGC();
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Hash table of all manually call site-cloned functions from within
|
||||
|
|
|
@ -3959,29 +3959,6 @@ ExclusiveContext::getNewType(const Class *clasp, TaggedProto proto, JSFunction *
|
|||
return type;
|
||||
}
|
||||
|
||||
#if defined(DEBUG) && defined(JSGC_GENERATIONAL)
|
||||
void
|
||||
JSCompartment::checkNewTypeObjectTableAfterMovingGC()
|
||||
{
|
||||
/*
|
||||
* Assert that the postbarriers have worked and that nothing is left in
|
||||
* newTypeObjects that points into the nursery, and that the hash table
|
||||
* entries are discoverable.
|
||||
*/
|
||||
JS::shadow::Runtime *rt = JS::shadow::Runtime::asShadowRuntime(runtimeFromMainThread());
|
||||
for (TypeObjectWithNewScriptSet::Enum e(newTypeObjects); !e.empty(); e.popFront()) {
|
||||
TypeObjectWithNewScriptEntry entry = e.front();
|
||||
JS_ASSERT(!IsInsideNursery(rt, entry.newFunction));
|
||||
TaggedProto proto = entry.object->proto();
|
||||
JS_ASSERT_IF(proto.isObject(), !IsInsideNursery(rt, proto.toObject()));
|
||||
TypeObjectWithNewScriptEntry::Lookup
|
||||
lookup(entry.object->clasp(), proto, entry.newFunction);
|
||||
TypeObjectWithNewScriptSet::Ptr ptr = newTypeObjects.lookup(lookup);
|
||||
JS_ASSERT(ptr.found() && &*ptr == &e.front());
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
TypeObject *
|
||||
ExclusiveContext::getLazyType(const Class *clasp, TaggedProto proto)
|
||||
{
|
||||
|
|
Загрузка…
Ссылка в новой задаче